home *** CD-ROM | disk | FTP | other *** search
/ Complete RPG Maker XP - 41 Games / tg esp 48 rpg maker.iso / RPG3D / Tools_Utilities / Quark.exe / Quark / addons / Defaults.qrk < prev    next >
Encoding:
Text File  |  2005-08-15  |  302.1 KB  |  8,120 lines

  1. QQRKSRC1
  2. //**************************************************************************
  3. //QuArK -- Quake Army Knife -- 3D game editor
  4. //Copyright (C) Armin Rigo
  5. //
  6. //This program is free software; you can redistribute it and/or
  7. //modify it under the terms of the GNU General Public License
  8. //as published by the Free Software Foundation; either version 2
  9. //of the License, or (at your option) any later version.
  10. //
  11. //This program is distributed in the hope that it will be useful,
  12. //but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. //GNU General Public License for more details.
  15. //
  16. //You should have received a copy of the GNU General Public License
  17. //along with this program; if not, write to the Free Software
  18. //Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  19. //
  20. //http://www.planetquake.com/quark - Contact information in AUTHORS.TXT
  21. //**************************************************************************
  22.  
  23. // Main configuration file for QuArK.
  24.  
  25. // Please see file TECHINFO.TXT for more information
  26. // about this file format.
  27.  
  28. //$Header: /cvsroot/quark/runtime/addons/Defaults.qrk,v 1.261 2005/08/16 04:01:52 cdunde Exp $
  29.  
  30. //$Log: Defaults.qrk,v $
  31. //Revision 1.261  2005/08/16 04:01:52  cdunde
  32. //Fix toolbar arraignment
  33. //
  34. //Revision 1.260  2005/08/15 21:19:26  cdunde
  35. //update version to QuArK 6.5.0 alpha 1
  36. //
  37. //Revision 1.259  2005/08/15 05:46:22  cdunde
  38. //To commit all files for Terrain Generator
  39. //
  40. //Revision 1.258  2005/08/02 23:02:10  cbxpm
  41. //Added "gamesounds-hl2.qrk" as new default addon
  42. //
  43. //Revision 1.257  2005/07/31 14:29:22  alexander
  44. //include soundscape file
  45. //
  46. //Revision 1.256  2005/07/24 22:13:26  cbxpm
  47. //added "soundscapes-hl2.qrk"  (hl2 default configuration)
  48. //
  49. //Revision 1.255  2005/07/11 18:11:49  alexander
  50. //calling hl2 : console setting does work only when applaunch is first param
  51. //
  52. //Revision 1.254  2005/07/11 13:47:52  cbxpm
  53. //minor HL2 path corrections (replaced static drive letter with <drive>)
  54. //
  55. //Revision 1.253  2005/07/09 20:20:00  cbxpm
  56. //re-edited file association .VMF
  57. //
  58. //Revision 1.252  2005/07/08 21:40:50  cbxpm
  59. //Added file association .vmf (Valve map format)
  60. //Changed HL2 default texture
  61. //
  62. //Revision 1.251  2005/06/22 01:22:59  alexander
  63. //user shaders for hl2
  64. //
  65. //Revision 1.250  2005/06/11 01:37:27  alexander
  66. //seperated entity files for simpler maintenance
  67. //
  68. //Revision 1.249  2005/04/17 14:45:18  alexander
  69. //added saving of alpha vtf
  70. //added configuration of output format
  71. //
  72. //Revision 1.248  2005/04/16 11:13:36  alexander
  73. //can save non alpha textures as vtf
  74. //can export used textures to materials folder
  75. //
  76. //Revision 1.247  2005/03/05 10:47:50  peter-b
  77. //Replaced build pgms kludge for Sylphis with t_GameBuildPgms macro
  78. //
  79. //Revision 1.246  2005/02/17 09:50:32  rowdy
  80. //added a per-game configuration option to specify the number of decimal places to use when writing floats to .map files, defaulted to 5 for all games except Torque, where it is defaulted to 16 (this is a hack for Torque's map2dif utility)
  81. //
  82. //Revision 1.245  2005/02/06 21:11:33  alexander
  83. //able to set lightmapscale value on a face for hl2
  84. //
  85. //Revision 1.244  2005/02/03 00:11:08  cdunde
  86. //Light coverage feature not working for Torque, so needed to add item" LightFactor" and default setting to Torque:config form for that part of quarkpy/mapentities.py def drawentitylines funtion to work.
  87. //
  88. //Revision 1.243  2005/01/21 17:44:33  alexander
  89. //allow file selection for hl2 filesystem dll
  90. //
  91. //Revision 1.242  2005/01/05 12:18:34  alexander
  92. //introduced %gamedir% variable expansion for running tools and utilized for hl2 support
  93. //
  94. //Revision 1.241  2005/01/04 17:22:10  alexander
  95. //steam environment configuration added
  96. //
  97. //Revision 1.240  2005/01/02 16:51:49  alexander
  98. //use setup value for file system module
  99. //
  100. //Revision 1.239  2004/12/30 06:42:17  cdunde
  101. //To add updated support for JA by nazar
  102. //
  103. //Revision 1.238  2004/12/28 02:17:52  alexander
  104. //allow individual texture paths for hl2
  105. //
  106. //Revision 1.237  2004/12/27 12:28:18  alexander
  107. //set textures path for hl2 to "hl2/materials"
  108. //set name of game directory form entry
  109. //
  110. //Revision 1.236  2004/12/27 06:27:00  rowdy
  111. //minor enhancements to Doom 3 support - fixed the ceiling texture in the default room, re-added textures/common/* (to make some activities slightly easier), improved Doom3 menu to allow exporting .map files
  112. //
  113. //Revision 1.235  2004/12/27 00:38:38  cdunde
  114. //To remove dupe entry for GameHalfLife2:form and put in alphabetical 
  115. //order.
  116. //
  117. //Revision 1.234  2004/12/26 23:54:25  cdunde
  118. //To put Doom 3 in proper game order on Games menu and config section.
  119. //
  120. //Revision 1.233  2004/12/22 11:37:40  rowdy
  121. //Rowdy - first pass of support for Doom 3
  122. //
  123. //Revision 1.232  2004/12/03 10:44:49  alexander
  124. //solved conflict
  125. //added mp, singleplayer, and cs options to form
  126. //
  127. //Revision 1.231  2004/11/30 06:23:13  cdunde
  128. //To add game support for Jedi Academy and alphabetize game  menu listing for HL2
  129. //
  130. //Revision 1.230  2004/11/25 00:42:18  alexander
  131. //first gcf access attempt
  132. //
  133. //Revision 1.229  2004/11/08 22:47:42  alexander
  134. //hl2 support started
  135. //
  136. //Revision 1.228  2004/06/02 21:29:59  cdunde
  137. //To up date for Sylphis_autogen.qrk addon
  138. //
  139. //Revision 1.227  2004/05/21 06:14:49  cdunde
  140. //To alphabetize game menu and config forms.
  141. //
  142. //Revision 1.226  2004/05/21 01:09:24  cdunde
  143. //To add support for Sylphis game engine. Code by Harry Kalogirou.
  144. //
  145. //Revision 1.225  2004/02/12 18:17:59  cdunde
  146. //To add 'Tab' HotKey function to rebuild all views and clear lockups
  147. //
  148. //Revision 1.224  2004/02/12 06:52:27  cdunde
  149. //To add hotkey to axisicons function for speedy use to try and clear 3D software mode view lockup problem
  150. //
  151. //Revision 1.223  2004/01/16 21:41:46  cdunde
  152. //To standardize all Basic Polyhedrons and add a new one
  153. //
  154. //Revision 1.222  2004/01/16 14:52:01  cdunde
  155. //To add new polyhedron shapes
  156. //
  157. //Revision 1.221  2004/01/14 09:28:35  cdunde
  158. //To correct coding error for wedge brush
  159. //
  160. //Revision 1.220  2004/01/05 22:29:55  silverpaladin
  161. //Updated the WildWest configuration. Changed it so that the ShaderList was not overwritten by default and made the menu options more readable.
  162. //
  163. //Revision 1.219  2003/09/19 20:45:44  cdunde
  164. //Update duplicator spacific help
  165. //
  166. //Revision 1.218  2003/09/18 03:00:37  cdunde
  167. //To add texture selection feature
  168. //
  169. //Revision 1.217  2003/08/31 21:15:52  silverpaladin
  170. //Minor change to the WildWest game launch line
  171. //
  172. //Revision 1.215  2003/08/29 18:59:57  nerdiii
  173. //texture position/size with two decimals
  174. //
  175. //Revision 1.214  2003/07/04 19:58:21  cdunde
  176. //To add new wedge shape builder
  177. //
  178. //Revision 1.213  2003/04/24 23:42:22  tiglari
  179. //|| to make mapstair hint appear in window
  180. //
  181. //Revision 1.212  2003/04/23 06:52:33  cdunde
  182. //To add  stair maker hint changes by tiglari
  183. //
  184. //Revision 1.211  2003/04/22 11:51:38  tiglari
  185. //update oldstyle stair specific hint
  186. //
  187. //Revision 1.210  2003/04/08 06:02:37  cdunde
  188. //To update dup stair:form for plugins/mapstair.py changes
  189. //
  190. //Revision 1.209  2003/03/19 22:22:36  tiglari
  191. //specify holes file for HL
  192. //
  193. //Revision 1.208  2003/03/12 11:32:27  decker_dk
  194. //Added 'EnableTransparency' checkbox for Half-Life. See also QkMapPoly.PAS (same date)
  195. //
  196. //Revision 1.207  2003/02/09 06:11:40  cdunde
  197. //Discription update and HotKey name change
  198. //
  199. //Revision 1.206  2003/02/03 08:43:27  cdunde
  200. //To build Model Options configuration form.
  201. //
  202. //Revision 1.205  2003/01/08 23:06:34  tiglari
  203. //AlwaysWriteThreeFields support
  204. //
  205. //Revision 1.204  2003/01/06 23:18:57  tiglari
  206. //defaults for wall maker altered again, hints enhanced
  207. //
  208. //Revision 1.203  2003/01/03 23:44:01  rowdy
  209. //removed duplicate Faces entry in AuxKey form definition
  210. //
  211. //Revision 1.201  2002/12/29 12:43:18  decker_dk
  212. //Altered the PluginInfo:form to use the new Memo-field type.
  213. //
  214. //Revision 1.200  2002/12/25 21:27:26  tiglari
  215. //shift Genesis3D to the  bottom of the games list
  216. //
  217. //Revision 1.199  2002/12/25 21:25:07  tiglari
  218. //add pts loading to Q1, Hx2, HL
  219. //
  220. //Revision 1.198  2002/12/18 00:52:37  tiglari
  221. //Preliminary crap Genesis3D support, copy of Q1
  222. //
  223. //Revision 1.197  2002/06/18 11:51:49  tiglari
  224. //fix SOF2 gamecode
  225. //
  226. //Revision 1.196  2002/06/16 10:01:46  tiglari
  227. //restore StupidBuildToolKludge for STVEF
  228. //
  229. //Revision 1.195  2002/06/09 02:33:01  tiglari
  230. //add SoF2 :form and :config
  231. //
  232. //Revision 1.194  2002/05/19 04:39:54  tiglari
  233. //add some hotkeys (Select Tagged Faces and Zoom to Selection)
  234. //
  235. //Revision 1.193  2002/05/16 09:08:28  tiglari
  236. //Update version to 6.4 alpha (no diff from 6,3 yet)
  237. //
  238. //Revision 1.192  2002/05/13 12:02:37  tiglari
  239. //update version
  240. //
  241. //Revision 1.191  2002/05/13 10:34:52  tiglari
  242. //support frozen selections (don't change until another frozen selection is made,
  243. //or they are cancelled with ESC or unfreeze selection)
  244. //
  245. //Revision 1.190  2002/05/13 10:24:06  tiglari
  246. //support bilinear filtering in OGL views
  247. //
  248. //Revision 1.189  2002/05/07 09:30:46  tiglari
  249. //JKII Updates from nurail
  250. //
  251. //Revision 1.188  2002/05/04 10:13:57  tiglari
  252. //EditableSurfaceParms flag for Mohaa
  253. //
  254. //Revision 1.187  2002/05/03 17:27:00  decker_dk
  255. //Fixes to the JK2 compile-tool, as discovered by 'nurail'.
  256. //
  257. //Revision 1.186  2002/04/30 17:56:22  decker_dk
  258. //JK2 compile-tools. Haven't testet yet though.
  259. //
  260. //Revision 1.185  2002/04/30 05:30:15  tiglari
  261. //STVEF info now runs Brush Primitives using the standard tools
  262. // (STVEF GDK 1.2)
  263. //
  264. //Revision 1.184  2002/04/28 21:27:40  tiglari
  265. //update version
  266. //
  267. //Revision 1.183  2002/04/28 11:39:05  tiglari
  268. //Modifications to get RTCW support working better
  269. //
  270. //Revision 1.182  2002/04/17 12:42:12  decker_dk
  271. //Updated MOHAA:config to use MOHAATool's compile-programs.
  272. //
  273. //Revision 1.181  2002/04/09 17:49:53  decker_dk
  274. //Fixed gamecode in GameTorque:form from "GAMd" to "GAMg".
  275. //Fixed typo in Quake 3:config; "Brush Primitivez" to "Brush Primitives".
  276. //
  277. //Revision 1.180  2002/04/08 21:07:14  tiglari
  278. //fixed torque gamecode
  279. //
  280. //Revision 1.179  2002/04/08 12:26:37  tiglari
  281. //support for Torque (from Desmond Fletcher)
  282. //
  283. //Revision 1.178  2002/04/04 17:53:37  decker_dk
  284. //Preliminary Jedi Knight II support
  285. //
  286. //Revision 1.177  2002/03/26 22:18:27  tiglari
  287. //add experimental commented out UseIntegralVertexes flag
  288. //
  289. //Revision 1.176  2002/03/26 10:21:02  tiglari
  290. //remove DisableEnhTex, BrushPrim from Map Options,
  291. //add OutputMapFormat to game config
  292. //
  293. //Revision 1.175  2002/03/23 09:43:30  tiglari
  294. //add SupportsBrushPrim flag to game config form and Quake3 defaults
  295. //
  296. //Revision 1.174  2002/02/26 23:24:01  tiglari
  297. //update version
  298. //
  299. //Revision 1.173  2002/02/24 13:44:24  decker_dk
  300. //Update version to "QuArK 6.3snap 2002feb24"
  301. //Added MOHAA (Medal Of Honor:Allied Assault)
  302. //
  303. //Revision 1.172  2002/02/05 18:33:48  decker_dk
  304. //Updated the RTCW config, so it works with GTKRadiant's Q3MAP.EXE program.
  305. //
  306. //Revision 1.171  2002/01/06 10:37:31  decker_dk
  307. //update version to "QuArK 6.3snap 2002jan06"
  308. //
  309. //Revision 1.170  2001/12/05 20:38:57  decker_dk
  310. //Added RTCW (Return To Castle Wolfenstein)
  311. //
  312. //Revision 1.169  2001/10/08 10:41:25  tiglari
  313. //solid mode added to wallmaker
  314. //
  315. //Revision 1.168  2001/10/07 22:36:03  tiglari
  316. //extrude mode for wallmaker
  317. //
  318. //Revision 1.167  2001/09/23 08:56:17  tiglari
  319. //oops, replace 'bevel' with 'miter' in wallmaker stuff
  320. //
  321. //Revision 1.166  2001/09/23 07:01:44  tiglari
  322. //mitered edges for wall maker duplicator
  323. //
  324. //Revision 1.165  2001/08/28 22:39:06  tiglari
  325. //fix Q3A CD-ROM config
  326. //'auto adjust normals' renamed to 'Quantize angles'
  327. //add Hotkey for Invert Face Selection
  328. //
  329. //Revision 1.164  2001/08/16 20:08:50  decker_dk
  330. //Added support for 'dup hlradfilemaker' plugin.
  331. //
  332. //Revision 1.163  2001/08/15 17:50:40  decker_dk
  333. //Added a 'dup symxyz' with toggleable axes.
  334. //
  335. //Revision 1.162  2001/08/06 00:19:49  tiglari
  336. //update version
  337. //
  338. //Revision 1.161  2001/08/06 00:15:51  tiglari
  339. //texture-cycling for duplicators
  340. //
  341. //Revision 1.160  2001/08/02 02:47:06  tiglari
  342. //browse group hotkey support
  343. //
  344. //Revision 1.159  2001/07/26 09:19:15  tiglari
  345. //Crystal Space bezier support, 2nd build prgm
  346. //
  347. //Revision 1.158  2001/07/19 11:58:58  tiglari
  348. //disable mapchecks for 6dx
  349. //
  350. //Revision 1.157  2001/07/19 02:23:24  tiglari
  351. //.hmf extension support for 6dx
  352. //
  353. //Revision 1.156  2001/07/14 01:56:27  tiglari
  354. //change Crystal Space pak extension to .zip
  355. //
  356. //Revision 1.155  2001/07/09 09:52:32  tiglari
  357. //update version #
  358. //
  359. //Revision 1.154  2001/07/08 08:33:06  tiglari
  360. //reinstated elbow button for path dup; added 'level' spec for path dup and
  361. //  instance (elbow) dup.
  362. //
  363. //Revision 1.153  2001/07/08 00:26:25  tiglari
  364. //'short' specific for extruder
  365. //
  366. //Revision 1.152  2001/07/04 11:56:13  uid21314
  367. //TextureFormat -> TextureWriteFormat for Crystal Space
  368. //
  369. //Revision 1.151  2001/07/03 02:35:13  tiglari
  370. //Crystal Space revisions
  371. //
  372. //Revision 1.150  2001/06/24 14:48:20  decker_dk
  373. //Added arg replacer
  374. //
  375. //Revision 1.149  2001/06/21 17:33:36  decker_dk
  376. //Added preliminary support for 6DX.
  377. //
  378. //Revision 1.148  2001/06/18 02:35:36  tiglari
  379. //update version
  380. //
  381. //Revision 1.147  2001/06/17 21:23:42  tiglari
  382. //commented out elbow (old instances) button on path dup till it works
  383. //
  384. //Revision 1.146  2001/06/17 03:05:04  aiv
  385. //set all seperators to "" that require it
  386. //
  387. //Revision 1.145  2001/06/17 02:55:14  aiv
  388. //fixed error
  389. //
  390. //Revision 1.144  2001/06/17 02:37:39  aiv
  391. //imported texture search plugin
  392. //
  393. //Revision 1.143  2001/06/17 02:05:48  tiglari
  394. //incremetable specifics for symx/y/z (but not symxy, different 'dp'
  395. // method makes this complex)
  396. //
  397. //Revision 1.142  2001/06/14 18:53:12  decker_dk
  398. //Inverted the use of TXT="&" in .QRK files. Now if it does not exist it defaults to TXT="&",
  399. //but if you don't want a caption-text to appear, you must explicitly write TXT="".
  400. //See [FormCfg.PAS] TFormCfg.wmInternalMessage() comments for reason.
  401. //
  402. //Revision 1.141  2001/06/05 12:38:44  tiglari
  403. //final value elaborations
  404. //
  405. //Revision 1.140  2001/06/05 09:38:42  tiglari
  406. //more development of incrementing in duplicators
  407. //
  408. //Revision 1.139  2001/05/27 01:08:14  tiglari
  409. //change 'serialize' to 'increment' for the duplicators as suggested by Decker
  410. //
  411. //Revision 1.138  2001/05/27 00:12:41  tiglari
  412. //support for 'serializable' (suffix incrementing) duplicators
  413. //
  414. //Revision 1.137  2001/05/25 12:37:18  tiglari
  415. //tagged plane support
  416. //
  417. //Revision 1.136  2001/05/21 12:06:32  tiglari
  418. //update version
  419. //
  420. //Revision 1.135  2001/05/12 23:06:05  tiglari
  421. //add  'item center' flag to linear duplicator for new linear fixpoint behavior
  422. //
  423. //Revision 1.134  2001/05/12 19:01:23  tiglari
  424. //remove scale & rotate buttons from linearform
  425. //
  426. //Revision 1.133  2001/05/11 09:37:41  tiglari
  427. //linear specific edit button added to linearform (scale & rotate must die,
  428. //  but not quite yet)
  429. //
  430. //Revision 1.132  2001/05/07 08:55:04  tiglari
  431. //update version
  432. //
  433. //Revision 1.131  2001/05/06 08:04:16  tiglari
  434. //remove instance dup from toolbox, simply path dup path point forms
  435. //
  436. //Revision 1.130  2001/05/06 06:00:28  tiglari
  437. //change angles Typ in linearform to E
  438. //
  439. //Revision 1.129  2001/05/06 03:04:36  tiglari
  440. //New Copy One added,  with 'offset dup' support: if ="1", then
  441. // dup origin-sourcelist center is added to offset
  442. //
  443. //Revision 1.128  2001/05/05 10:01:25  tiglari
  444. //patch mode supported for extruder
  445. //
  446. //Revision 1.127  2001/05/04 09:06:49  tiglari
  447. //fix default texture for stvef
  448. //
  449. //Revision 1.126  2001/05/04 00:25:15  aiv
  450. //form and form element creation done.
  451. //
  452. //Revision 1.125  2001/04/30 10:58:55  tiglari
  453. //added child, key mods for next/prev of same type (look like hotkeys,
  454. //different implementation in quarkpy.mapselection)
  455. //
  456. //Revision 1.124  2001/04/28 02:41:06  tiglari
  457. //update version
  458. //
  459. //Revision 1.123  2001/04/28 02:19:03  tiglari
  460. //add selection menu hotkeys
  461. //
  462. //Revision 1.122  2001/04/27 04:49:18  tiglari
  463. //fix bad hint about subdivides, using form inclusion
  464. //
  465. //Revision 1.121  2001/04/16 00:41:36  tiglari
  466. //extract entity lumps from .bsp's in pakfolder toolbar button
  467. //
  468. //Revision 1.120  2001/04/10 08:58:36  tiglari
  469. //grid specific for brush bevel/cap/arch (force vertexes to grid)
  470. //
  471.  
  472. //Revision 1.105.4.1  2001/04/06 10:41:28  tiglari
  473. //stupidbuildtoolkludges as checkable option; on by default for Q3A
  474. //   (merge in from REL_62)
  475. //
  476. //Revision 1.119  2001/04/05 22:37:09  tiglari
  477. //linearform now uses matrix instead of linear (applies differently for standard
  478. //  duplicators)
  479. //
  480. //Revision 1.118  2001/03/31 13:04:09  tiglari
  481. //usercenter for groups (for rotation)
  482. //
  483. //Revision 1.117  2001/03/31 10:14:57  tiglari
  484. //remove origin dup from toolboxes, add support for usercenter specific
  485. // & button to add it (linked commits to maphandles,py, mapdupspath.py)
  486. //
  487. //Revision 1.116  2001/03/30 22:20:35  tiglari
  488. //explanatory line for buildmenu hotkeys
  489. //
  490. //Revision 1.115  2001/03/29 21:03:27  tiglari
  491. //extruder support
  492. //
  493. //Revision 1.114  2001/03/29 05:51:31  tiglari
  494. //add forms for duplicators, change duplicator toolbox to name Basic
  495. // and Linear Duplicators.
  496. //
  497. //Revision 1.113  2001/03/29 01:27:19  aiv
  498. //modifable :form objects!
  499. //
  500. //Revision 1.112  2001/03/28 19:23:45  decker_dk
  501. //In HotKeyForm:incl, changed from Txt="&" (editable) to Txt="&R" (readonly).
  502. //
  503. //Revision 1.111  2001/03/22 20:24:31  tiglari
  504. //path-following rotation for instances
  505. //
  506. //Revision 1.110  2001/03/20 22:48:26  tiglari
  507. //Meatball402's instance duplicator
  508. //
  509. //Revision 1.109  2001/03/20 21:51:54  decker_dk
  510. //Updated copyright-header
  511. //
  512. //Revision 1.108  2001/03/20 15:49:34  maleficus
  513. //quark will now tell q3map to support whatever mod folder the map file was called from.
  514. //This requires the latest version of q3map to work properly.
  515. //
  516. //Revision 1.107  2001/03/20 10:58:56  tiglari
  517. //hotkey fix (now in General)
  518. //
  519. //Revision 1.106  2001/03/20 08:04:09  tiglari
  520. //customizable hot key support
  521. //
  522. //Revision 1.97.2.1  2001/03/11 22:06:08  tiglari
  523. //hot key defaults
  524. //
  525. //Revision 1.105  2001/03/17 21:55:25  decker_dk
  526. //Added 'Q3ArchLib.qrk' and 'Q3models.qrk' as AddOns for Quake-3
  527. //
  528. //Revision 1.104  2001/03/16 17:09:22  maleficus
  529. //saveprt added for q3 vlight
  530. //
  531. //Revision 1.103  2001/03/16 16:01:18  maleficus
  532. //q3(T)a map limits now set to the limits of q3map
  533. //
  534. //Revision 1.102  2001/03/16 00:28:50  aiv
  535. //made customizable maplimits for games
  536. //
  537. //Revision 1.101  2001/03/15 21:11:39  aiv
  538. //moved .fgd reading to menu, sepearted texture & entity reading
  539. //
  540. //Revision 1.100  2001/03/15 11:30:28  tiglari
  541. //remove stupidbuildtoolkludge from Q3A
  542. //
  543. //Revision 1.99  2001/03/14 19:21:13  decker_dk
  544. //Functionality for '-ext{action}'... which is not documented yet!
  545. //
  546. //Revision 1.98  2001/03/13 01:40:23  aiv
  547. //new fgd->qrk converter inbuilt
  548. //
  549. //Revision 1.97  2001/03/10 01:29:21  tiglari
  550. //Crystal Space and STVEF added to Quake Context list
  551. //
  552. //Revision 1.96  2001/03/09 09:32:24  tiglari
  553. //update version
  554. //
  555. //Revision 1.95  2001/03/08 23:31:23  aiv
  556. //entity tool finished completly i think.
  557. //
  558. //Revision 1.94  2001/03/08 21:55:18  tiglari
  559. //first segment of path dup is now 'level' (won't twist)
  560. //
  561. //Revision 1.93  2001/03/07 20:01:36  tiglari
  562. //path_point specifics
  563. //
  564. //Revision 1.92  2001/03/04 11:21:08  decker_dk
  565. //Minor fix for dup stair
  566. //
  567. //Revision 1.91  2001/03/04 06:42:46  tiglari
  568. //radial duplicator support
  569. //
  570. //Revision 1.90  2001/03/02 19:34:18  decker_dk
  571. //Made a 'Shape Builders' folder.
  572. //
  573. //Revision 1.89  2001/03/01 19:13:14  decker_dk
  574. //added 'BezierPatchSupport' and 'BezierPatchPluginPrefixes' to Quake-3 and STVEF.
  575. //
  576. //Revision 1.88  2001/02/25 11:21:28  tiglari
  577. //reset snapshot #
  578. //
  579. //Revision 1.87  2001/02/25 04:44:57  tiglari
  580. //new specifics for brush&patch arch&bevel
  581. //
  582. //Revision 1.86  2001/02/25 02:01:57  tiglari
  583. //brush curve forms added
  584. //
  585. //Revision 1.85  2001/02/23 03:42:24  tiglari
  586. //form for dup path, supporting square end and setback
  587. //
  588. //Revision 1.84  2001/02/22 19:19:29  decker_dk
  589. //Added three pathdup.points
  590. //
  591. //Revision 1.83  2001/02/20 08:07:41  tiglari
  592. //DefaultTextureScale added for Q3A
  593. //
  594. //Revision 1.82  2001/02/18 20:21:37  decker_dk
  595. //Added 'Half-Life info_decal Helper:d' to a new group 'Game specific'.
  596. //
  597. //Revision 1.81  2001/02/14 23:36:45  alexander
  598. //set name
  599. //
  600. //Revision 1.80  2001/02/12 03:47:17  tiglari
  601. //reset snapshot #
  602. //
  603. //Revision 1.79  2001/02/08 11:08:22  tiglari
  604. //removed path points from path duplicator toolbox item
  605. //
  606. //Revision 1.78  2001/02/07 18:44:02  aiv
  607. //bezier texture vertice page started.
  608. //
  609. //Revision 1.77  2001/02/07 00:06:57  aiv
  610. //added fixes from 6.1c release
  611. //
  612. //Revision 1.76  2001/02/02 08:21:00  tiglari
  613. //updated version #
  614. //
  615. //Revision 1.75  2001/01/30 19:09:48  decker_dk
  616. //Renamed to 'Crystal Space:config'.
  617. //
  618. //Revision 1.74  2001/01/28 17:26:10  decker_dk
  619. //Set 'Hide scrollbars in map-editor' to enabled as default. (Due to the Q3A huge-maps problem, which is easily solved by hiding the scrollbars!)
  620. //Added 'DisableMapComments' option to 'Map:config'.
  621. //Added a 'MapCommentsPrefix' to all games ':config' settings.
  622. //
  623. //Revision 1.73  2001/01/27 18:24:17  decker_dk
  624. //Removed the key 'Q3ShaderPath', as it is replaced with 'ShadersPath'.
  625. //Renamed the key 'Q2TexPath' to 'TexturesPath'.
  626. //Suffixed all 'program' keyvalues with '.EXE'.
  627. //Moved some :config key/values around to more logical groupings.
  628. //Renamed:
  629. //= TextureDef        -> DefaultTexture
  630. //= TriggerTextureDef -> DefaultTextureTrigger
  631. //= ClipTextureDef    -> DefaultTextureClip
  632. //= OriginTextureDef  -> DefaultTextureOrigin
  633. //Inserted in 'CustomQuakeMenu:form' extra information as '[::BuildArgs1]'
  634. //Added some hints to the games configuration-forms.
  635. //Key 'DefPoly' changed values to '<X>x<Y>x<Z>'
  636. //Added DefaultTextureCaulk
  637. //
  638. //Revision 1.72  2001/01/07 13:21:48  decker_dk
  639. //Set Versionname.
  640. //
  641. //Revision 1.71  2000/12/30 15:28:53  decker_dk
  642. //Path Duplicator
  643. //
  644. //Revision 1.70  2000/11/19 15:32:29  decker_dk
  645. //- Added 'ImageListTextureDimension' and 'ImageListLoadNoOfTexAtEachCall' to
  646. //Defaults.QRK, for manipulating the TextureBrowser-TextureLists.
  647. //- Modified TFQWad.PopulateListView, so it reads the above settings.
  648. //- Changed two 'goto bail' statements to 'break' statements, in QkObjects.
  649. //- Found the problem in the .MAP exporting entity-numbering, and corrected it.
  650. //- Changed the '|' delimiting character in QObject.Ancestry to '->', as I think
  651. //it will be more readable in the .MAP file.
  652. //- Replaced the function-names:
  653. //  = SauverTexte         -> SaveAsText
  654. //  = SauverTextePolyedre -> SaveAsTextPolygon
  655. //  = SauverTexteBezier   -> SaveAsTextBezier
  656. //  = SauverSpec          -> SaveAsTextSpecArgs
  657. //
  658. //Revision 1.69  2000/11/16 19:42:44  decker_dk
  659. //- Modified Convex's texture-fileextension alias code, so it won't conflict
  660. //with the rest of the existing code.
  661. //- Introduced a 'TextureFileExtensions' specific, which will contain the
  662. //texture-fileextension aliases, for COnvex's code.
  663. //- Implemented solution for extracting texture-links from .PK3 files
  664. //('.pakfolder' vs '.zipfolder' problem)
  665. //- Replaced the function-names:
  666. //  = Q2TexPath    -> GameTexturesPath
  667. //  = Q3ShaderPath -> GameShadersPath
  668. //- Cleaned up some code here and there.
  669. //- Corrected problem with QTextureFile.LoadPaletteInfo not initializing an
  670. //PGameBuffer totally. Hmm? May have introduced problem with color-palette
  671. //in other windows than the texture-browser-detail.
  672. //- Found the place in QkWAD.PAS where the common size of the textures, in the
  673. //texture-browser, are controlled/set. Useful for 32x32, 128x128 and so scaling.
  674. //
  675. //Revision 1.68  2000/11/11 17:58:20  decker_dk
  676. //Compressed some text into an existing :incl, for BuildToolControllers
  677. //
  678. //Revision 1.67  2000/11/04 20:14:55  decker_dk
  679. //+devmap for Quake-3
  680. //
  681. //Revision 1.66  2000/10/29 16:12:43  decker_dk
  682. //Q3A and STVEF 'CheckFile' modifications
  683. //
  684. //Revision 1.65  2000/10/28 19:28:34  decker_dk
  685. //Some more comments reg. user-variables for build-tool controllers
  686. //
  687. //Revision 1.64  2000/10/27 20:42:28  decker_dk
  688. //Crystal Space .QRK files
  689. //
  690. //Revision 1.63  2000/10/26 16:53:03  tiglari
  691. //enable brush primitives item added
  692. //
  693. //Revision 1.62  2000/10/16 22:32:58  aiv
  694. //added compression options to memory options (CompressionBufferSize and CompressionLevel)
  695. //
  696. //Revision 1.61  2000/10/15 16:49:12  alexander
  697. //rename StarTrek EF to STVEF
  698. //
  699. //Revision 1.60  2000/10/15 16:08:03  alexander
  700. //set name
  701. //
  702. //Revision 1.59  2000/10/10 07:46:17  tiglari
  703. //"C" code for circle-strafe selection added to map and model mouse modes
  704. //
  705. //Revision 1.58  2000/10/09 18:16:11  decker_dk
  706. //Build-Tool Controllers (and commented Crystal Space)
  707. //
  708. //Revision 1.57  2000/09/25 00:09:28  alexander
  709. //set name
  710. //
  711. //Revision 1.56  2000/09/18 01:28:03  alexander
  712. //added Texture Write Format setup entries (needed because texture aliasing)
  713. //added StarTrek EF support
  714. //
  715. //Revision 1.55  2000/09/17 14:59:29  alexander
  716. //committed convex' generalization of texture format aliasing
  717. //
  718. //Revision 1.54  2000/09/10 13:01:23  alexander
  719. //set name
  720. //
  721. //Revision 1.53  2000/09/04 21:20:28  tiglari
  722. //additions to dup column specifics, for more options
  723. //
  724. //Revision 1.52  2000/09/02 11:19:11  tiglari
  725. //added subdivide specific for arch/cap
  726. //
  727. //Revision 1.51  2000/09/02 06:13:04  tiglari
  728. //detail specifics for cap duplicator (python not yet implemented)
  729. //
  730. //Revision 1.50  2000/09/01 11:12:55  tiglari
  731. //Put some bevel specifics onto a details button in the form.
  732. //
  733. //Revision 1.49  2000/09/01 00:49:02  alexander
  734. //merged in tiglaris default sof sky fix from rel6_1 branch
  735. //
  736. //Revision 1.46.2.1  2000/08/26 09:44:48  tiglari
  737. //fixed default texture for SoF
  738. //
  739. //Revision 1.48  2000/08/25 18:01:06  decker_dk
  740. //Added Typ='EDL' functionality specialy for QuakeCtx:form
  741. //
  742. //Revision 1.47  2000/08/21 20:58:21  aiv
  743. //Added Skin form for model editor
  744. //
  745. //Revision 1.46  2000/07/28 15:09:48  alexander
  746. //set snapshot name
  747. //
  748. //Revision 1.45  2000/07/25 16:03:04  alexander
  749. //set snapshot name
  750. //
  751. //Revision 1.44  2000/07/18 13:48:29  alexander
  752. //set snapshot name
  753. //
  754. //Revision 1.43  2000/07/04 20:22:32  alexander
  755. //added SOF specific default form reference for quakemenu (without extract textures)
  756. //removed Q3 specific dup arenafilemaker form
  757. //
  758. //Revision 1.42  2000/07/04 17:24:59  alexander
  759. //added default form for dup arenafilemaker
  760. //
  761. //Revision 1.41  2000/07/03 23:15:10  alexander
  762. //set snapshot version
  763. //
  764. //Revision 1.40  2000/07/03 22:41:38  alexander
  765. //fixed: models beeing not compiled in the bsp (activated stupidbuildtoolkludge flag)
  766. //
  767. //Revision 1.39  2000/06/27 11:03:49  tiglari
  768. //detail content flag reinstated
  769. //
  770. //Revision 1.38  2000/06/25 10:56:23  tiglari
  771. //column cone & bulge support
  772. //
  773. //Revision 1.37  2000/06/24 16:49:06  alexander
  774. //removed from SoF config : UnifiedPalette = "1" (fix for no textures in sofware mode)
  775. //
  776. //Revision 1.36  2000/06/22 22:41:21  tiglari
  777. //added support for columns (and pipes)
  778. //
  779. //Revision 1.35  2000/06/17 07:28:10  tiglari
  780. //stretchtex flag for arch/cap and bevel
  781. //
  782. //Revision 1.34  2000/06/14 04:38:54  tiglari
  783. //Added `faceonly' specific for arches & bevels.
  784. //
  785. //Revision 1.33  2000/06/13 12:48:34  tiglari
  786. //revised bevel & cap/arch forms
  787. //
  788. //Revision 1.32  2000/06/12 11:14:39  tiglari
  789. //Bevel duplicator form added
  790. //
  791. //Revision 1.31  2000/06/10 10:00:35  alexander
  792. //fixed: switching to kingpin game when selecting addons or output dirs in the SoF config dialog
  793. //
  794. //Revision 1.30  2000/06/07 22:34:27  alexander
  795. //changed: NeedQCSG config entry and replaced it
  796. //by a SpecialCustomQuakeMenu entry (which specifies the form name)
  797. //Added: Custom Quake menu form for quake 3 with bspc
  798. //
  799. //Revision 1.29  2000/06/05 00:15:15  alexander
  800. //added "StupidBuildToolKludge" flag for games (likes SoF) where the tools want to run in basedir
  801. //fixed wrong base dir of SoF
  802. //seperated NeedQCSG flag from FirstBuildCmd (is now extra flag)
  803. //
  804. //Revision 1.27  2000/06/04 15:52:52  alexander
  805. //added: origin default texture entry for both SoF and KingPin
  806. //fixed: wrong default texture for SoF
  807. //
  808. //Revision 1.26  2000/05/21 01:20:15  tiglari
  809. //Added cap duplicator specifics
  810. //
  811. //Revision 1.25  2000/05/12 17:44:19  decker_dk
  812. //Auto-create Texture-links to .tga/.jpg files - .shaders still missing
  813. //
  814. //Revision 1.24  2000/05/11 22:00:43  alexander
  815. //removed palette.pcx
  816. //changed default texture
  817. //
  818. //Revision 1.23  2000/05/06 15:21:01  decker_dk
  819. //Dont overwrite files that already exist. This fix may cause a problem elsewhere however...
  820. //
  821. //Revision 1.22  2000/05/05 00:01:07  alexander
  822. //added: game forms and defaults for Soldier of Fortune
  823. //
  824. //Revision 1.21  2000/04/29 15:13:52  decker_dk
  825. //Allow other than PAK#.PAK files
  826. //
  827. //Revision 1.20  2000/04/26 02:01:30  alexander
  828. //fixed default trigger texture for kingpin
  829. //
  830.  
  831. {
  832.   QuArKProtected = "1"
  833.   Description = "Main configuration file"
  834.   Static.qrk =
  835.   {
  836.     General:config =     // ":config" objects are displayed in the Configuration dialog box
  837.     {
  838.       Version = "QuArK 6.5 alpha"
  839.       InternalVersion = '6.2'
  840.       TextureBrowser = "Texture Browser..."
  841.       NewMapItems = "New Map Items..."
  842.       RecentFiles = ""
  843.       Display:config =
  844.       {
  845.         //Gamma = '1.35'
  846.         //Gamma = '2.0'
  847.         Gamma = '1.6'
  848.         MarsCaption = "?"
  849.         AutoFocus = "1"
  850.         Unsel = ""
  851.         Sel = "1"
  852.         MppTopBtns = "1"
  853.         IconPath = "images\\"
  854.         Form = "GeneralDisplay"
  855.       }
  856.       3D view:config =
  857.       {
  858.         Lib = "qrksoftg.dll"
  859.         3DFXLogo = ""
  860.         SoftQuality = "0"
  861.         DynamicQuality = "2"
  862.         //FullScreen = ""
  863.         FullScreenGamma = '1.3'
  864.         FullScreenSize = '560 420'
  865.         TwoMonitors = ""
  866.         FarDistance = '1500'  // objects are totally black at this distance
  867.         DarkFactor = '0.67'   // only 67% of the FarDistance is considered really visible
  868.         TranspFactor = '0.3'  // in isometric views, an additionnal 30% of the normal depth is visible but transparent
  869.         TextureMaxDimension="7"
  870.         VAngle = '30'
  871.         FogDensity = '1.05'
  872.         FogColor = $000000
  873.         FrameColor = $000000
  874.         SelGroupColor = $FF80FF
  875.         SelFaceColor = $80FF80
  876.         SelMultColor = $FF8080
  877.         Entities = "1"
  878.         EntityBoxes = ""
  879.         KeyForward = $26
  880.         KeyBack = $28
  881.         KeyLeft = $25
  882.         KeyRight = $27
  883.         KeyStepLeft = $23
  884.         KeyStepRight = $22
  885.         KeyViewUp = "Q"
  886.         KeyViewDown = "Y"
  887.         KeyViewCenter = "A"
  888.         KeyUp = "D"
  889.         KeyDown = "C"
  890.         KeyRun = $10
  891.         KeyStep = $12
  892.         Speed = '250'
  893.         RunSpeed = '500'
  894.         RotateSpeed = '160'
  895.         AccelDelay = '0.35'
  896.         RunAccelDelay = '0.2'
  897.         MouseHLook = '10'
  898.         MouseVLook = '10'
  899.         MouseWalk = '10'
  900.         MouseSideStep = '10'
  901.         MouseUpDown = '10'
  902.         Form = "General3DView"
  903.       }
  904.       OpenGL:config =
  905.       {
  906.         Warning2 = "1"
  907.         WndRect = '0 0 640 480'
  908.         DoubleBuffer = "1"
  909.         SupportsGDI = ""
  910.         Bilinear = "1"
  911.         AllowsGDI = "1"
  912.         GLLists = "1"
  913.         ColorBits = '0'
  914.         DepthBits = '16'
  915.         Fog = "1"
  916.         VCorrection = '0.92'
  917.         Lights = "1"
  918.         Ambient = '0.4'
  919.         Form = "GeneralOpenGL"
  920.       }
  921.       Memory:config =
  922.       {
  923.         MaxUndo = '50'
  924.         MinUndo = '10'
  925.         UndoBufferSize = '3.0'     // MB
  926.         GameFiles = '30'
  927.         GameBufferSize = '10.0'     // MB
  928.         CompressionBufferSize = '16' // KBytes
  929.         CompressionLevel = '9' // Where else to put this?
  930.         Form = "GeneralMemory"
  931.       }
  932.       QuakeC:config =
  933.       {
  934.         KeyWords = "LOCAL"$0D"BIND"$0D"AUTOEXEC"$0D"IF"$0D"ELSE"$0D"WHILE"$0D"DO"$0D"RETURN"
  935.          $0D"VOID"$0D"STRING"$0D"FLOAT"$0D"VECTOR"$0D"ENTITY"
  936.         Enabled = "1"
  937.         Font5 = $00000000F3FFFFFF000000000000000000000000BC0200000000000100000000
  938.          $436F7572696572204E6577004000E536400040000000C03A4000382240003F22
  939.         Font1 = $0000FF00F3FFFFFF000000000000000000000000900100000000000100000000
  940.          $436F7572696572204E657700F582C827F7BF6E20F6BF00707300002A9B00F0F6
  941.         Font3 = $FF000000F3FFFFFF000000000000000000000000900100000000000100000000
  942.          $436F7572696572204E657700F582C827F7BF6E20F6BF00707300002A9B00F0F6
  943.         Font2 = $00008000F3FFFFFF000000000000000000000000BC0200000000000100000000
  944.          $436F7572696572204E6577004000E536400040000000C03A4000382240004CFA
  945.         Font4 = $80008000F3FFFFFF000000000000000000000000900100000100000100000000
  946.          $436F7572696572204E6577004000E536400040000000C03A4000382240004CFA
  947.         Font6 = $00000000F0FFFFFF000000000000000000000000BC0200000000000100000000
  948.          $436F7572696572204E6577004000E536400040000000C03A4000382240004CFA
  949.         Form = "GeneralQuakeC"
  950.       }
  951.       File Associations:config =
  952.       {
  953.         .qrk = "!"     iqrk = '1'
  954.         .qkm = "!"     iqkm = '2'
  955.         .map = "1"     imap = '2'
  956.         .vmf = "1"     ivmf = '2'
  957.         .qkl = "!"     iqkl = '4'
  958.         .md2 = "1"     imd2 = '4'
  959.         .mdl = "1"     imdl = '4'
  960.         .pak = "1"     ipak = '5'
  961.         .sin = "1"     isin = '5'
  962.         .pk3 = "1"     ipk3 = '5'
  963.         .pk4 = "1"     ipk4 = '5'
  964.         .bsp = "1"     ibsp = '3'
  965.         .qc  = "1"     iqc  = '8'
  966.         .hc  = "1"     ihc  = '8'
  967.         .wad = "1"     iwad = '9'
  968.         .wal = "1"     iwal = '10'
  969.         .swl = "1"     iswl = '10'
  970.         .m8  = "1"     im8  = '10'
  971.         .pcx = ""      ipcx = '7'
  972.         .bmp = ""      ibmp = '7'
  973.         .tga = ""      itga = '7'
  974.         .jpg = ""      ijpg = '7'
  975.         .cin = "1"     icin = '6'
  976.         .wav = ""
  977.         .cfg = ""      icfg = '11'
  978.         .qme = ""
  979.         .zip = ""      izip = '5'
  980.         Form = "GeneralAssociations"
  981.       }
  982.       External editors:config =
  983.       {
  984.         Form = "GeneralExternalEditors"
  985.         .pcx = ""
  986.         .tga = ""
  987.         .bmp = "<open>"
  988.         .jpg = "" //DECKER
  989.         .wav = "<edit>"
  990.         .cin = "<open>"
  991.         .mdl = "<open>"
  992.         .md2 = "<open>"
  993.         .map = "Notepad.exe"
  994.         .wal = ""
  995.         .swl = ""
  996.         .m8  = ""
  997.         .pak = "<open>"
  998.         .pk3 = "<open>" //DECKER
  999.         .pk4 = "<open>"
  1000.         .sin = ""
  1001.         .bsp = "<open>"
  1002.         .wad = "<open>"
  1003.         .qc  = "Notepad.exe"
  1004.         .qrk = "Notepad.exe"
  1005.       }
  1006.       HotKeys:config =
  1007.       {
  1008.         Open = "Ctrl+O"
  1009.         Save = "Ctrl+S"
  1010.         Close = "Ctrl+Q"
  1011.         Cut = "Ctrl+X"
  1012.         Copy = "Ctrl+C"
  1013.         Paste ="Ctrl+V"
  1014.         Delete="Del"
  1015.         Undo = "Ctrl+Z"
  1016.         Redo = "Shift+Ctrl+Z"
  1017.         Duplicate= "Ctrl+D"
  1018.         Cancel Selections= "Esc"
  1019.         Select Parent="Home"
  1020.         Collapse Tree="S"        // not a true hotkey, but a modifier
  1021.         Select Child="End"
  1022.         Select Next="PgDn"
  1023.         Select Previous="PgUp"
  1024.         Same Type="S"            // not a true hotkey, but a modifier
  1025.         Insert = "Ins"
  1026.         Tag Side = "Ctrl+T"
  1027.         Clear Tags = "Alt+C"
  1028.         Add to Tagged = "Ctrl+A"
  1029.         Glue Side = "Ctrl+G"
  1030.         Align Texture = "Ctrl+W"
  1031.         Link Selection = "Ctrl+L"
  1032.         Extend Selection = "Ctrl+E"
  1033.         Select Tagged Faces = "Alt+S"
  1034.         Unrestrict Selection = "Ctrl+U"
  1035.         Restrict to Selection = "Alt+R"
  1036.         Zoom to Selection = "Alt+Z"
  1037.         Brush Subtraction =  "Ctrl+B"
  1038.         Browse Multiple Selection = "Alt+B"
  1039.         Invert Face Selection = "Ctrl+I"
  1040.         Freeze Selection = "Alt+F"
  1041.         Unfreeze Selection = "Alt+U"
  1042.         Make Detail = "Alt+D"
  1043.         AxisXYZ = "Alt+A"
  1044.         Rebuild3D = "Tab"
  1045.         Game Menu = "These are set in Game Menu|Customize"
  1046.         Form = "MapHotKeys"
  1047.       }
  1048.       AuxKeys:config =
  1049.       {
  1050.         Select Faces  = "F"
  1051.         Select Brushes = "B"
  1052.         Select Curves = "C"
  1053.         Select Entities = "E"
  1054.         Form = "MapAuxKeys"
  1055.       }
  1056.     }
  1057.     Games:config =
  1058.     {
  1059.       GameCfg = "Quake 2"
  1060.  
  1061.       6DX:config =
  1062.       {
  1063.         Game = "6DX"
  1064.         Code = "Z" // Hardcoded value in Setup.PAS
  1065.  
  1066.         Program = "6DX11.EXE"
  1067.  
  1068.         Directory = ""
  1069.         CheckDirectory = ""
  1070.  
  1071.         MapCommentsPrefix = ";"
  1072.         OutputMapFormat = "Quark etp"
  1073.  
  1074.         TexturesPath = "textures/"
  1075.         Q2TexFlags = "1"
  1076.         NoMapChecks = "1"
  1077.  
  1078.         DefaultTexture = "walls/brown"
  1079.         DefaultTextureTrigger = "special/trigger" //FIXME
  1080.         DefaultTextureClip = "special/clip" //FIXME
  1081.  
  1082.         walTrick = "1"
  1083.         TextureFormat = ".m8"
  1084.         TextureWriteFormat = ".m8"
  1085.  
  1086.         BaseDir = "base"
  1087.         tmpQuArK = "tmpQuArK"
  1088.  
  1089.         Palette = ":pics/colormap.pcx"
  1090.         //Gradient = "gfx/colormap.lmp"
  1091.         ExtraCmdLine = "+set game %s"
  1092.         RunMapCmdLine = " +map %s"
  1093.         AddOns = "Data6DX.qrk"
  1094.         AlwaysPak = ""
  1095.         PakExt = ".pak"
  1096.         PakFormat = "HTIC2-#.PAK"
  1097.         MapFilter = "808"     // filter in quarkpy.qdictionnary.py
  1098.         Console = "1"
  1099.         Form = "Game6DX"
  1100.         LightFactor = '0.9'
  1101.         3DLight = '512'
  1102.         BrushDecimalPlaces = '5'
  1103.       }
  1104.  
  1105.       Crystal Space:config =
  1106.       {
  1107.         Game = "Crystal Space"
  1108.         Code = "c" // Hardcoded value in Setup.PAS
  1109.  
  1110.         Program = "WalkTest.EXE"
  1111.  
  1112.         Directory = "/quark2cs_511/"
  1113.         CheckDirectory = "WALKTEST.EXE"
  1114.  
  1115.         MapCommentsPrefix = "//"
  1116.         OutputMapFormat="Classic Quake"
  1117.  
  1118.         BuildPgm1 = "MAP2CS.EXE"
  1119.         BuildArgs1 = "%mapfile% %file%.zip c:\map2cs\map2cs.cfg"
  1120.  
  1121.         BuildPgm2 = "cp"
  1122.         BuildArgs2 = "%file%.zip %mappath%\.."
  1123.  
  1124.         TexturesPath = "textures/"
  1125.         Q2TexFlags = "1"
  1126.  
  1127.         BezierPatchSupport = "1" // this game supports bezier-patches
  1128.         BezierPatchPluginPrefixes = "MB2" // Prefix of the MB2*.PY files. You can also specify the value: "MB2"$0D"MB3"$0D"MB4"
  1129.  
  1130.         DefaultTexture = "intro/wl_outbrick1a"
  1131.  
  1132.         TextureWad = "?"  // variable (the map name is used)
  1133.         TextureWriteFormat = ".wad3_C"
  1134.  
  1135.         BaseDir = "data"
  1136.         tmpQuArK = "data"
  1137.  
  1138.         Palette = ":pics/colormap.pcx"
  1139.         ExtraCmdLine = ""
  1140.         RunMapCmdLine = " %s"
  1141.         AddOns = "DataCS.qrk"
  1142.         AlwaysPak = ""
  1143.         PakExt = ".zip"
  1144.         LightFactor = '0.90000'
  1145.         3DLight = '512'
  1146.         Console = "1"
  1147.         Form = "GameCrystalSpace"
  1148.         PlayerClass = "X"
  1149.         BrushDecimalPlaces = '5'
  1150.       }
  1151.  
  1152.       Doom 3:config =
  1153.       {
  1154.         Game = "Doom 3"
  1155.         Code = "j" // Hardcoded value in Setup.PAS
  1156.         Program = "Doom3.exe +set sv_pure 0"
  1157.  
  1158.         Directory = "\Doom3"
  1159.         CheckDirectory = "DOOM3.EXE"
  1160.  
  1161.         CD = ""
  1162.         CDDir = "\Doom3\base"
  1163.  
  1164.         MapLimit = '65536 65536 65536'
  1165.  
  1166.         MapCommentsPrefix = "//"
  1167.         OutputMapFormat = "Brush Primitives"
  1168.         StupidBuildToolKludge = "1" //those guys should get shot for that
  1169.         AlwaysWriteThreeFields = "1"
  1170.         SupportsBrushPrim = "1"
  1171.         BuildPgm1  = "Doom3.exe"
  1172.         //BuildArgs1 = "-moddir .."
  1173.         BuildCheck1= "+BSP,-LIN{LoadLinFile}"
  1174.         //BuildPgm2  = "Q3MAP.EXE"
  1175.         //BuildArgs2 = "-vis -saveprt"
  1176.         //BuildPgm3  = "Q3MAP.EXE"
  1177.         //BuildArgs3 = "-light"
  1178.         //BuildPgm4  = "BSPC.EXE"
  1179.         //BuildArgs4 = "-bsp2aas %file%.BSP -output %mappath%"
  1180.         //BuildCheck4= "+AAS"
  1181.  
  1182.         TexturesPath = "textures/"
  1183.         ShadersPath = "materials/"
  1184.         MaterialsPath = "materials/"
  1185.         Q2TexFlags = "1"
  1186.  
  1187.         BezierPatchSupport = "1" // this game supports bezier-patches
  1188.         BezierPatchPluginPrefixes = "MB2" // Prefix of the MB2*.PY files. You can also specify the value: "MB2"$0D"MB3"$0D"MB4"
  1189.  
  1190.         DefaultTexture = "base_wall/a_sopanel1_d01b"
  1191.         DefaultTextureTrigger = "common/trigger"
  1192.         //DefaultTextureOrigin = "common/origin"
  1193.         DefaultTextureClip = "common/clip"
  1194.         DefaultTextureCaulk = "common/caulk"
  1195.         DefaultTextureScale = "0.5"
  1196.  
  1197.         TextureFormat = ".tga"                  // primary texture fileextension
  1198.         TextureFileExtensions = ".tga,.jpg"     // possible texture fileextensions
  1199.         TextureWriteFormat = ".tga"
  1200.         TextureShaders = "materials/quark.mtr"  // TextureMaterials?
  1201.  
  1202.         BaseDir = "base"
  1203.         tmpQuArK = "base" // base instead of tmpQuArK (for now, at least)
  1204.  
  1205.         Palette = ":pics/colormap.pcx"
  1206.         ExtraCmdLine = "+set fs_game %s"
  1207.         RunMapCmdLine = " +devmap %s"
  1208.         //AddOns = "DataQ3.qrk"$0D"Q3ArchLib.qrk"$0D"Q3models.qrk"
  1209.         AddOns = "DataD3.qrk"
  1210.         AlwaysPak = ""
  1211.         PakExt = ".pk4"
  1212.         PakFormat = "*.PK4"
  1213.         Console = "1"
  1214.         Form = "GameDoom3"
  1215.         LightFactor = '0.9'
  1216.         3DLight = '512'
  1217.         PakExtra1 = ".aas"  // PAK extra files into pak file (ie maps/mapname.aas)
  1218.         BrushDecimalPlaces = '5'
  1219.       }
  1220.  
  1221.       Genesis3D:config =
  1222.       {
  1223.         Game = "Genesis3D"
  1224.         Code = "4" // Hardcoded value in Setup.PAS
  1225.  
  1226.         Program = "Quake.EXE"
  1227.  
  1228.         Directory = "\Quake"
  1229.         CheckDirectory = "QUAKE.EXE"
  1230.  
  1231.         MapCommentsPrefix = "//"
  1232.  
  1233.         OutputMapFormat = "Classic Quake"
  1234.         BuildPgm1  = "TXQBSP.EXE"
  1235.         BuildArgs1 = ""
  1236.         BuildCheck1= "+BSP,+PRT"
  1237.         BuildPgm2  = "RVIS.EXE"
  1238.         BuildArgs2 = ""
  1239.         BuildPgm3  = "ARGHLITE.EXE"
  1240.         BuildArgs3 = ""
  1241.  
  1242.         DefaultTexture = "bricka2_2"
  1243.         DefaultTextureTrigger = "trigger"
  1244.         DefaultTextureClip = "clip"
  1245.  
  1246.         WateryTex = "*"
  1247.         TextureFormat = ".wad_D"
  1248.         TextureWriteFormat = ".wad_D"
  1249.         TextureWad = "gfx/QuArK.wad"
  1250.  
  1251.         BaseDir = "id1"
  1252.         tmpQuArK = "tmpQuArK"
  1253.  
  1254.         MapHoles = ".pts"
  1255.         Palette = "gfx/palette.lmp"
  1256.         Gradient = "gfx/colormap.lmp"
  1257.         UnifiedPalette = "1"
  1258.         ExtraCmdLine = "-game %s"
  1259.         RunMapCmdLine = " +map %s"
  1260.         AddOns = "DataGen3D.qrk"    // list of files to use as add-ons for Quake 1 (separator is the character $0D hex., example : "first.qrk"$0D"second.qrk"$0D"third.qrk"
  1261.         AlwaysPak = ""
  1262.         PakExt = ".pak"
  1263.         LightFactor = '0.9'
  1264.         3DLight = '512'
  1265.         Console = "1"
  1266.         Form = "GameQuake1"
  1267.         PlayerClass = "X"
  1268.         BrushDecimalPlaces = '5'
  1269.       }
  1270.  
  1271.       Half-Life:config =
  1272.       {
  1273.         Game = "Half-Life"
  1274.         Code = "3" // Hardcoded value in Setup.PAS
  1275.  
  1276.         Program = "HL.EXE -console -dev -zone 1024 +set sv_cheats 1"
  1277.  
  1278.         Directory = "\Sierra\Half-Life"
  1279.         CheckDirectory = "HL.EXE"
  1280.  
  1281.         MapCommentsPrefix = "//"
  1282.         OutputMapFormat = "Valve 220"
  1283.  
  1284.         BuildPgm1  = "HLCSG.EXE"
  1285.         BuildArgs1 = ""
  1286.         BuildCheck1= "+BSP"
  1287.         BuildPgm2  = "HLBSP.EXE"
  1288.         BuildArgs2 = ""
  1289.         BuildCheck2= "+BSP,+PRT,-PTS{LoadLinFile}"
  1290.         BuildPgm3  = "HLVIS.EXE"
  1291.         BuildArgs3 = ""
  1292.         BuildPgm4  = "HLRAD.EXE"
  1293.         BuildArgs4 = ""
  1294.  
  1295.         DefaultTexture = "FIFTIES_WALL14Y"
  1296.         DefaultTextureTrigger = "AAATRIGGER"
  1297.         DefaultTextureOrigin = "ORIGIN"
  1298.         DefaultTextureClip = "CLIP"
  1299.         EnableTransparency = ""
  1300.         TextureWad = "?"     // variable (the map name is used)
  1301.         GameNeedWad = "1"
  1302.         WateryTex = "!"
  1303.         TextureFormat = ".wad3_C"
  1304.         TextureWriteFormat = ".wad3_C"
  1305.  
  1306.         BaseDir = "valve"
  1307.         tmpQuArK = "tmpQuArK"
  1308.  
  1309.         MapHoles = ".pts"
  1310.         Palette = "gfx/palette.lmp"
  1311.         Gradient = "gfx/colormap.lmp"
  1312.         //DECKER - 'ExtractFiles' just creates troubles, if another mod-directory is choosen....
  1313.         //ExtractFiles = "cl_dlls/*.*"
  1314.         ExtraCmdLine = "-game %s"
  1315.         RunMapCmdLine = " +map %s"
  1316.  
  1317.         AddOns = "DataHL.qrk"
  1318. //      AddOns = "BaseData.qrk"
  1319.  
  1320.         AlwaysPak = ""
  1321.         PakExt = ".pak"
  1322.         LightFactor = '0.9'
  1323.         3DLight = '512'
  1324.         Console = "1"
  1325.         Form = "GameHalfLife"
  1326.         PlayerClass = "X"
  1327.         BrushDecimalPlaces = '5'
  1328.       }
  1329.  
  1330.       Half-Life2:config =
  1331.       {
  1332.         Game = "Half-Life2"
  1333.         Code = "k" // Hardcoded value in Setup.PAS
  1334.  
  1335.  
  1336.         Directory = "<drive>:/steam"
  1337.         SteamFSModule = "<drive>:/steam/steamapps/<steam user name>/sourcesdk/bin/FileSystem_Steam.dll"
  1338.         SteamAppUser = "<your steam username>"
  1339.         SteamAppId = "211"
  1340.  
  1341.         BaseDir = "hl2"
  1342.         MapCommentsPrefix = "//"
  1343.         OutputMapFormat = "HL2"
  1344.         AddOns = "DataHL2.qrk"$0D"textures-hl2.qrk"$0D"models-hl2.qrk"$0D"soundscapes-hl2.qrk"$0D
  1345.         "gamesounds-hl2.qrk"$0D"textures-hl2-cs.qrk"$0D"base.qrk"$0D"cstrike.qrk"$0D
  1346.         "halflife2.qrk"$0D"hl2mp.qrk"
  1347.  
  1348.         BuildPgmsDir="<drive>:/steam/SteamApps/<steam user name>/sourcesdk/bin"
  1349.         BuildPgm1  = "vbsp.exe"
  1350.         BuildArgs1 = ""
  1351.         BuildCheck1= ""
  1352.         BuildPgm2  = "vvis.exe"
  1353.         BuildArgs2 = ""
  1354.         BuildCheck2= ""
  1355.         BuildPgm3  = "vrad.exe"
  1356.         BuildArgs3 = ""
  1357.         BuildCheck3= ""
  1358.         BuildPgm4  = "glview.exe"
  1359.         BuildArgs4 = ""
  1360.         BuildCheck4= ""
  1361.         BuildPgm5  = "bspzip.exe"
  1362.         BuildArgs5 = ""
  1363.         BuildCheck5= ""
  1364.  
  1365.  
  1366.         DefaultTexture = "Dev/dev_measuregeneric01b"
  1367.         DefaultTextureTrigger = "Tools/toolstrigger"
  1368.         DefaultTextureOrigin = "Tools/toolsorigin"
  1369.         DefaultTextureClip = "Tools/toolsclip"
  1370.         DefaultTextureScale = "0.25"
  1371.         EnableTransparency = ""
  1372.         WateryTex = "!"
  1373.         TextureFormat = ".vmt"
  1374.         TextureWriteFormat = ".vtf"
  1375.         TextureWriteSubFormat = "3"
  1376.         TextureWriteSubFormatA = "15"
  1377.         TexturesPath = "materials/"
  1378.  
  1379.  
  1380.         MapHoles = ".pts"
  1381.        // ExtraCmdLine = "-game %s"
  1382.         RunMapCmdLine = " +map %s"
  1383.  
  1384.  
  1385.         PakExt = ".gcf"
  1386.         PakFormat = "*.gcf"
  1387.         LightFactor = '0.9'
  1388.         3DLight = '512'
  1389.         Console = "1"
  1390.         Form = "GameHalfLife2"
  1391.         PlayerClass = "X"
  1392.         BrushDecimalPlaces = '5'
  1393.       }
  1394.  
  1395.       Heretic II:config =
  1396.       {
  1397.         Game = "Heretic II"
  1398.         Code = "B" // Hardcoded value in Setup.PAS
  1399.  
  1400.         Program = "Heretic2.EXE"
  1401.  
  1402.         Directory = "\Heretic II"
  1403.         CheckDirectory = "HERETIC2.EXE"
  1404.  
  1405.         MapCommentsPrefix = ";"
  1406.  
  1407.         BuildPgm1  = "TXQBSP3.EXE"
  1408.         BuildArgs1 = ""
  1409.         BuildCheck1= "+BSP,-LIN{LoadLinFile}"
  1410.         BuildPgm2  = "TIMVIS3.EXE"
  1411.         BuildArgs2 = ""
  1412.         BuildPgm3  = "ARGHRAD.EXE"
  1413.         BuildArgs3 = "-gamedir .. -moddir ."
  1414.  
  1415.         TexturesPath = "textures/"
  1416.         Q2TexFlags = "1"
  1417.  
  1418.         DefaultTexture = "andoria/sstone"
  1419.         DefaultTextureTrigger = "andoria/sstone" //FIXME
  1420.         DefaultTextureClip = "andoria/clip" //FIXME
  1421.  
  1422.         walTrick = "1"
  1423.         TextureFormat = ".m8"
  1424.         TextureWriteFormat = ".m8"
  1425.  
  1426.         BaseDir = "base"
  1427.         tmpQuArK = "tmpQuArK"
  1428.  
  1429.         Palette = ":pics/colormap.pcx"    //  ":" means that the palette is stored in DataHr2.qrk
  1430.         //Gradient = "gfx/colormap.lmp"
  1431.         ExtraCmdLine = "+set game %s"
  1432.         RunMapCmdLine = " +map %s"
  1433.         AddOns = "DataHr2.qrk"
  1434.         AlwaysPak = ""
  1435.         PakExt = ".pak"
  1436.         PakFormat = "HTIC2-#.PAK"
  1437.         Console = "1"
  1438.         Form = "GameHeretic2"
  1439.         LightFactor = '0.9'
  1440.         3DLight = '512'
  1441.         BrushDecimalPlaces = '5'
  1442.       }
  1443.  
  1444.       Hexen II:config =
  1445.       {
  1446.         Game = "Hexen II"
  1447.         Code = "2" // Hardcoded value in Setup.PAS
  1448.  
  1449.         Program = "H2.EXE"
  1450.  
  1451.         Directory = "\Hexen II"
  1452.         CheckDirectory = "H2.EXE"
  1453.  
  1454.         MapCommentsPrefix = "//"
  1455.         OutputMapFormat = "Quark etp"
  1456.  
  1457.         BuildPgm1  = "QBSP.EXE"
  1458.         BuildArgs1 = ""
  1459.         BuildCheck1= "+BSP,+PRT,-PTS{LoadLinFile}"
  1460.         BuildPgm2  = "VIS.EXE"
  1461.         BuildArgs2 = ""
  1462.         BuildPgm3  = "LIGHT.EXE"
  1463.         BuildArgs3 = ""
  1464.  
  1465.         DefaultTexture = "rtex215"
  1466.         DefaultTextureTrigger = "rtex215" //FIXME
  1467.         DefaultTextureClip = "clip" //FIXME
  1468.  
  1469.         WateryTex = "*"
  1470.         TextureFormat = ".wad_D"
  1471.         TextureWriteFormat = ".wad_D"
  1472.         TextureWad = "gfx/QuArK.wad"
  1473.  
  1474.         BaseDir = "data1"
  1475.         tmpQuArK = "tmpQuArK"
  1476.  
  1477.         MapHoles = ".pts"
  1478.         Palette = "gfx/palette.lmp"
  1479.         Gradient = "gfx/colormap.lmp"
  1480.         UnifiedPalette = "1"
  1481.         ExtraCmdLine = "-game %s"
  1482.         RunMapCmdLine = " +map %s"
  1483.         AddOns = "DataH2.qrk"
  1484.         AlwaysPak = ""
  1485.         PakExt = ".pak"
  1486.         Console = "1"
  1487.         Form = "GameHexenII"
  1488.         QuakeC = "HexenC"
  1489.         MdlPath = "models/"
  1490.         LightFactor = '0.72'
  1491.         3DLight = '640'
  1492.         HxStrings = "strings.txt"
  1493.         PlayerClass = "1"
  1494.         BrushDecimalPlaces = '5'
  1495.       }
  1496.  
  1497.       JA:config =
  1498.       {
  1499.         Game = "JA"
  1500.         Code = "l" // Hardcoded value in Setup.PAS
  1501.         Program = "JASP.EXE +set sv_pure 0"
  1502.  
  1503.         Directory = "\JediAcademy\"
  1504.         CheckDirectory = "JASP.EXE"
  1505.  
  1506.         CD = ""
  1507.         CDDir = ""
  1508.  
  1509.         MapLimit = '65536 65536 65536'
  1510.  
  1511.         MapCommentsPrefix = "//"
  1512.         OutputMapFormat="Classic Quake"
  1513.         AlwaysWriteThreeFields = "1"
  1514.  
  1515.         StupidBuildToolKludge = "1" // GTKRadiant's Q3MAP.EXE seems to work, when '-game wolf' and -fs_basepath <gamepath>' are applied.
  1516.         BuildPgm1  = "Q3MAP2.EXE"
  1517.         BuildArgs1 = "-game ja -fs_basepath "$22"E:/Games/JediAcademy/"$22" -meta"
  1518.         BuildPgm2  = "Q3MAP2.EXE"
  1519.         BuildArgs2 = "-game ja -fs_basepath "$22"E:/Games/JediAcademy/"$22" -vis -saveprt"
  1520.         BuildPgm3  = "Q3MAP2.EXE"
  1521.         BuildArgs3 = "-game ja -fs_basepath "$22"E:/Games/Wild_Force/"$22" -light -fast"
  1522.  
  1523.         TexturesPath = "textures/"
  1524.         ShadersPath = "shaders/"
  1525.         Q2TexFlags = "1"
  1526.  
  1527.         BezierPatchSupport = "1" // this game supports bezier-patches
  1528.         BezierPatchPluginPrefixes = "MB2" // Prefix of the MB2*.PY files. You can also specify the value: "MB2"$0D"MB3"$0D"MB4"
  1529.  
  1530.         DefaultTexture = "imperial/wall_3"
  1531.         DefaultTextureTrigger = "system/trigger"
  1532.         DefaultTextureOrigin = "system/origin"
  1533.         DefaultTextureClip = "system/clip"
  1534.         DefaultTextureCaulk = "system/caulk"
  1535.         DefaultTextureScale = "0.5"
  1536.  
  1537.         TextureFormat = ".tga"                  // primary texture fileextension
  1538.         TextureFileExtensions = ".tga,.jpg,.png"     // possible texture fileextensions
  1539.         TextureWriteFormat = ".tga"
  1540.         TextureShaders = "shaders/quark.shader"
  1541.  
  1542.         BaseDir = "base"
  1543.         tmpQuArK = "tmpQuArK"
  1544.  
  1545.         Palette = ":pics/colormap.pcx"
  1546.         ExtraCmdLine = "+set fs_game %s"
  1547.         RunMapCmdLine = " +devmap %s"
  1548.         AddOns = "DataJA.qrk"$0D"Q3ArchLib.qrk"
  1549.         AlwaysPak = ""
  1550.         PakExt = ".pk3"
  1551.         PakFormat = "*.PK3"
  1552.         Console = "1"
  1553.         Form = "GameJA"
  1554.         LightFactor = '0.9'
  1555.         3DLight = '512'
  1556.         PakExtra1 = ".nav"  // PAK extra files into pak file (ie maps/mapname.nav)
  1557.         BrushDecimalPlaces = '5'
  1558.       }
  1559.  
  1560.       JK2:config =
  1561.       {
  1562.         Game = "JK2"
  1563.         Code = "f" // Hardcoded value in Setup.PAS
  1564.         Program = "JK2MP.EXE +set sv_pure 0"
  1565.  
  1566.         Directory = "\Star Wars JK II Jedi Outcast\GameData"
  1567.         CheckDirectory = "JK2MP.EXE"
  1568.  
  1569.         CD = ""
  1570.         CDDir = ""
  1571.  
  1572.         MapLimit = '65536 65536 65536'
  1573.  
  1574.         MapCommentsPrefix = "//"
  1575.         OutputMapFormat="Classic Quake"
  1576.         AlwaysWriteThreeFields = "1"
  1577.  
  1578.         StupidBuildToolKludge = "1" // GTKRadiant's Q3MAP.EXE seems to work, when '-game wolf' and -fs_basepath <gamepath>' are applied.
  1579.         BuildPgm1  = "SOF2MAP.EXE"
  1580.         BuildArgs1 = "-bsp"
  1581.         BuildCheck1= "+BSP,-LIN{LoadLinFile}"
  1582.         BuildPgm2  = "SOF2MAP.EXE"
  1583.         BuildArgs2 = "-vis -saveprt"
  1584.         BuildPgm3  = "SOF2MAP.EXE"
  1585.         BuildArgs3 = "-light"
  1586.         BuildPgm4  = "SOF2MAP.EXE"
  1587.         BuildArgs4 = "-all"
  1588.  
  1589.         TexturesPath = "textures/"
  1590.         ShadersPath = "shaders/"
  1591.         Q2TexFlags = "1"
  1592.  
  1593.         BezierPatchSupport = "1" // this game supports bezier-patches
  1594.         BezierPatchPluginPrefixes = "MB2" // Prefix of the MB2*.PY files. You can also specify the value: "MB2"$0D"MB3"$0D"MB4"
  1595.  
  1596.         DefaultTexture = "yavin/woodwall_moss"
  1597.         DefaultTextureTrigger = "system/trigger"
  1598.         DefaultTextureOrigin = "system/origin"
  1599.         DefaultTextureClip = "system/clip"
  1600.         DefaultTextureCaulk = "system/caulk"
  1601.         DefaultTextureScale = "0.5"
  1602.  
  1603.         TextureFormat = ".tga"                  // primary texture fileextension
  1604.         TextureFileExtensions = ".tga,.jpg"     // possible texture fileextensions
  1605.         TextureWriteFormat = ".tga"
  1606.         TextureShaders = "shaders/quark.shader"
  1607.  
  1608.         BaseDir = "base"
  1609.         tmpQuArK = "tmpQuArK"
  1610.  
  1611.         Palette = ":pics/colormap.pcx"
  1612.         ExtraCmdLine = "+set fs_game %s"
  1613.         RunMapCmdLine = " +devmap %s"
  1614.         AddOns = "DataJK2.qrk"$0D"Q3ArchLib.qrk"
  1615.         AlwaysPak = ""
  1616.         PakExt = ".pk3"
  1617.         PakFormat = "*.PK3"
  1618.         Console = "1"
  1619.         Form = "GameJK2"
  1620.         LightFactor = '0.9'
  1621.         3DLight = '512'
  1622.         PakExtra1 = ".nav"  // PAK extra files into pak file (ie maps/mapname.nav)
  1623.         BrushDecimalPlaces = '5'
  1624.       }
  1625.  
  1626.       KingPin:config =
  1627.       {
  1628.         Game = "KingPin"
  1629.         Code = "D" // Hardcoded value in Setup.PAS
  1630.  
  1631.         Program = "KingPin.EXE"
  1632.  
  1633.         Directory = "\KingPin"
  1634.         CheckDirectory = "KINGPIN.EXE"
  1635.  
  1636.         CD = ""
  1637.         CDDir = "Install\Data"
  1638.  
  1639.         MapCommentsPrefix = ";"
  1640.         OutputMapFormat = "Classic Quake"
  1641.  
  1642.         BuildPgm1  = "KPBSP.EXE"
  1643.         BuildArgs1 = ""
  1644.         BuildCheck1= "+BSP,-LIN{LoadLinFile}"
  1645.         BuildPgm2  = "KPVIS.EXE"
  1646.         BuildArgs2 = ""
  1647.         BuildPgm3  = "KPRAD.EXE"
  1648.         BuildArgs3 = "-gamedir .. -moddir ."
  1649.  
  1650.         TexturesPath = "textures/"
  1651.         Q2TexFlags = "1"
  1652.  
  1653.         DefaultTexture = "bricks/b_cp_v10x"
  1654.         DefaultTextureTrigger = "common/0_trigger"
  1655.         DefaultTextureOrigin = "common/0_origin"
  1656.         DefaultTextureClip = "common/0_clip"
  1657.  
  1658.         walTrick = "1"
  1659.         TextureFormat = ".tga"
  1660.         TextureWriteFormat = ".tga"
  1661.  
  1662.         BaseDir = "main"
  1663.         tmpQuArK = "tmpQuArK"
  1664.  
  1665.         Palette = "pics/colormap.pcx"
  1666.         Gradient = "pics/colormap.pcx"
  1667.         UnifiedPalette = "1"
  1668.         ExtractFiles = "pics/colormap.pcx"
  1669.         ExtraCmdLine = "+set game %s"
  1670.         RunMapCmdLine = " +map %s"
  1671.         AddOns = "DataKP.qrk"
  1672.         AlwaysPak = ""
  1673.         PakExt = ".pak"
  1674.         Console = "1"
  1675.         Form = "GameKingPin"
  1676.         LightFactor = '0.90000' //adjust radius around light that it shows how far the light goes
  1677.         3DLight = '512'
  1678.         BrushDecimalPlaces = '5'
  1679.       }
  1680.  
  1681.       MOHAA:config =
  1682.       {
  1683.         Game = "MOHAA"
  1684.         Code = "e" // Hardcoded value in Setup.PAS
  1685. //        Program = "MOHAA.EXE +set sv_pure 0"
  1686.         Program = "mohaa +set developer 1 +set thereisnomonkey 1 +set cheats 1 +set ui_console 1"
  1687.  
  1688.         Directory = "\MOHAA"
  1689.         CheckDirectory = "MOHAA.EXE"
  1690.  
  1691.         CD = ""
  1692.         CDDir = ""
  1693.  
  1694.         MapLimit = '65536 65536 65536'
  1695.  
  1696.         MapCommentsPrefix = "//"
  1697.         OutputMapFormat="Classic Quake"
  1698.         AlwaysWriteThreeFields = "1"
  1699.         EditableSurfaceParms="1"
  1700.  
  1701.         StupidBuildToolKludge = ""
  1702.         BuildPgm1  = "Q3MAP.EXE"
  1703.         BuildArgs1 = "-gamedir "$22"%basepath%"$22" "$22"%file%"$22
  1704.         BuildCheck1= "+BSP,-LIN{LoadLinFile}"
  1705.         BuildPgm2  = "Q3MAP.EXE"
  1706.         BuildArgs2 = "-vis -gamedir "$22"%basepath%"$22" "$22"%file%"$22
  1707.         BuildPgm3  = "MOHLIGHT.EXE"
  1708.         BuildArgs3 = "-gamedir "$22"%basepath%"$22" "$22"%file%"$22
  1709.       //BuildPgm4  = "BSPC.EXE"
  1710.       //BuildArgs4 = "-bsp2aas %file%.BSP -output %mappath%"
  1711.       //BuildCheck4= "+AAS"
  1712.  
  1713.         TexturesPath = "textures/"
  1714.         ShadersPath = "scripts/"
  1715.         Q2TexFlags = "1"
  1716.  
  1717.         BezierPatchSupport = "1" // this game supports bezier-patches
  1718.         BezierPatchPluginPrefixes = "MB2" // Prefix of the MB2*.PY files. You can also specify the value: "MB2"$0D"MB3"$0D"MB4"
  1719.  
  1720.         DefaultTexture = "general_structure/archstone2lt"
  1721.         DefaultTextureTrigger = "common/trigger"
  1722.         DefaultTextureOrigin = "common/origin"
  1723.         DefaultTextureClip = "common/clip"
  1724.         DefaultTextureCaulk = "common/caulk"
  1725.         DefaultTextureScale = "0.5"
  1726.  
  1727.         TextureFormat = ".tga"                  // primary texture fileextension
  1728.         TextureFileExtensions = ".tga,.jpg"     // possible texture fileextensions
  1729.         TextureWriteFormat = ".tga"
  1730.         TextureShaders = "scripts/quark.shader"
  1731.  
  1732.         BaseDir = "main"
  1733.         tmpQuArK = "main"
  1734.  
  1735.         Palette = ":pics/colormap.pcx"
  1736.         ExtraCmdLine = "+set developer 1 +set thereisnomonkey 1 +set cheats 1 +set ui_console 1 +set fs_game %s"
  1737.         RunMapCmdLine = " +map %s"
  1738.         AddOns = "DataMOHAA.qrk"$0D"Q3ArchLib.qrk"
  1739.         AlwaysPak = ""
  1740.         PakExt = ".pk3"
  1741.         PakFormat = "*.PK3"
  1742.         Console = "1"
  1743.         Form = "GameMOHAA"
  1744.         LightFactor = '0.9'
  1745.         3DLight = '512'
  1746.       //PakExtra1 = ".aas"  // PAK extra files into pak file (ie maps/mapname.aas)
  1747.         BrushDecimalPlaces = '5'
  1748.       }
  1749.  
  1750.       Quake 1:config =
  1751.       {
  1752.         Game = "Quake 1"
  1753.         Code = "1" // Hardcoded value in Setup.PAS
  1754.  
  1755.         Program = "Quake.EXE"
  1756.  
  1757.         Directory = "\Quake"
  1758.         CheckDirectory = "QUAKE.EXE"
  1759.  
  1760.         MapCommentsPrefix = "//"
  1761.  
  1762.         OutputMapFormat = "Quark etp"
  1763.         BuildPgm1  = "TXQBSP.EXE"
  1764.         BuildArgs1 = ""
  1765.         BuildCheck1= "+BSP,+PRT,-PTS{LoadLinFile}"
  1766.         BuildPgm2  = "RVIS.EXE"
  1767.         BuildArgs2 = ""
  1768.         BuildPgm3  = "ARGHLITE.EXE"
  1769.         BuildArgs3 = ""
  1770.  
  1771.         DefaultTexture = "bricka2_2"
  1772.         DefaultTextureTrigger = "trigger"
  1773.         DefaultTextureClip = "clip"
  1774.  
  1775.         WateryTex = "*"
  1776.         TextureFormat = ".wad_D"
  1777.         TextureWriteFormat = ".wad_D"
  1778.         TextureWad = "gfx/QuArK.wad"
  1779.  
  1780.         BaseDir = "id1"
  1781.         tmpQuArK = "tmpQuArK"
  1782.  
  1783.         MapHoles = ".pts"
  1784.         Palette = "gfx/palette.lmp"
  1785.         Gradient = "gfx/colormap.lmp"
  1786.         UnifiedPalette = "1"
  1787.         ExtraCmdLine = "-game %s"
  1788.         RunMapCmdLine = " +map %s"
  1789.         AddOns = "DataQ1.qrk"    // list of files to use as add-ons for Quake 1 (separator is the character $0D hex., example : "first.qrk"$0D"second.qrk"$0D"third.qrk"
  1790.         AlwaysPak = ""
  1791.         PakExt = ".pak"
  1792.         LightFactor = '0.9'
  1793.         3DLight = '512'
  1794.         Console = "1"
  1795.         Form = "GameQuake1"
  1796.         PlayerClass = "X"
  1797.         BrushDecimalPlaces = '5'
  1798.       }
  1799.  
  1800.       Quake 2:config =
  1801.       {
  1802.         Game = "Quake 2"
  1803.         Code = "A" // Hardcoded value in Setup.PAS
  1804.  
  1805.         Program = "Quake2.EXE"
  1806.  
  1807.         Directory = "\Quake2"
  1808.         CheckDirectory = "QUAKE2.EXE"
  1809.  
  1810.         CD = ""
  1811.         CDDir = "Install\Data"
  1812.  
  1813.         MapCommentsPrefix = ";"
  1814.         OutputMapFormat = "Quark etp"
  1815.  
  1816.         BuildPgm1  = "TXQBSP3.EXE"
  1817.         BuildArgs1 = ""
  1818.         BuildCheck1= "+BSP,-LIN{LoadLinFile}"
  1819.         BuildPgm2  = "TIMVIS3.EXE"
  1820.         BuildArgs2 = ""
  1821.         BuildPgm3  = "ARGHRAD.EXE"
  1822.         BuildArgs3 = "-gamedir .. -moddir ."
  1823.  
  1824.         TexturesPath = "textures/"
  1825.         Q2TexFlags = "1"
  1826.  
  1827.         DefaultTexture = "e1u1/damage1_1"
  1828.         DefaultTextureTrigger = "e1u1/trigger"
  1829.         DefaultTextureOrigin = "e1u1/origin"
  1830.         DefaultTextureClip = "e1u1/clip"
  1831.  
  1832.         TextureFormat = ".wal"
  1833.         TextureWriteFormat = ".wal"
  1834.  
  1835.         BaseDir = "baseq2"
  1836.         tmpQuArK = "tmpQuArK"
  1837.  
  1838.         Palette = "pics/colormap.pcx"
  1839.         Gradient = "pics/colormap.pcx"
  1840.         UnifiedPalette = "1"
  1841.         ExtractFiles = "pics/colormap.pcx"
  1842.         ExtraCmdLine = "+set game %s"
  1843.         RunMapCmdLine = " +map %s"
  1844.         AddOns = "DataQ2.qrk"
  1845.         AlwaysPak = ""
  1846.         PakExt = ".pak"
  1847.         Console = "1"
  1848.         Form = "GameQuake2"
  1849.         LightFactor = '0.9'
  1850.         3DLight = '512'
  1851.         BrushDecimalPlaces = '5'
  1852.       }
  1853.  
  1854.       Quake 3:config =
  1855.       {
  1856.         Game = "Quake 3"
  1857.         Code = "a" // Hardcoded value in Setup.PAS
  1858.         Program = "Quake3.EXE +set sv_pure 0"
  1859.  
  1860.         Directory = "\Quake3"
  1861.         CheckDirectory = "QUAKE3.EXE"
  1862.  
  1863.         CD = ""
  1864.         CDDir = "\Quake3\baseq3"
  1865.  
  1866.         MapLimit = '65536 65536 65536'
  1867.  
  1868.         MapCommentsPrefix = "//"
  1869.         OutputMapFormat = "Brush Primitives"
  1870.         StupidBuildToolKludge = "1" //those guys should get shot for that
  1871.         AlwaysWriteThreeFields = "1"
  1872.         SupportsBrushPrim = "1"
  1873.         BuildPgm1  = "Q3MAP.EXE"
  1874.         BuildArgs1 = "-moddir .."
  1875.         BuildCheck1= "+BSP,-LIN{LoadLinFile}"
  1876.         BuildPgm2  = "Q3MAP.EXE"
  1877.         BuildArgs2 = "-vis -saveprt"
  1878.         BuildPgm3  = "Q3MAP.EXE"
  1879.         BuildArgs3 = "-light"
  1880.         BuildPgm4  = "BSPC.EXE"
  1881.         BuildArgs4 = "-bsp2aas %file%.BSP -output %mappath%"
  1882.         BuildCheck4= "+AAS"
  1883.  
  1884.         TexturesPath = "textures/"
  1885.         ShadersPath = "scripts/"
  1886.         Q2TexFlags = "1"
  1887.  
  1888.         BezierPatchSupport = "1" // this game supports bezier-patches
  1889.         BezierPatchPluginPrefixes = "MB2" // Prefix of the MB2*.PY files. You can also specify the value: "MB2"$0D"MB3"$0D"MB4"
  1890.  
  1891.         DefaultTexture = "base_wall/basewall03"
  1892.         DefaultTextureTrigger = "common/trigger"
  1893.         DefaultTextureOrigin = "common/origin"
  1894.         DefaultTextureClip = "common/clip"
  1895.         DefaultTextureCaulk = "common/caulk"
  1896.         DefaultTextureScale = "0.5"
  1897.  
  1898.         TextureFormat = ".tga"                  // primary texture fileextension
  1899.         TextureFileExtensions = ".tga,.jpg"     // possible texture fileextensions
  1900.         TextureWriteFormat = ".tga"
  1901.         TextureShaders = "scripts/quark.shader"
  1902.  
  1903.         BaseDir = "baseq3"
  1904.         tmpQuArK = "tmpQuArK"
  1905.  
  1906.         Palette = ":pics/colormap.pcx"
  1907.         ExtraCmdLine = "+set fs_game %s"
  1908.         RunMapCmdLine = " +devmap %s"
  1909.         AddOns = "DataQ3.qrk"$0D"Q3ArchLib.qrk"$0D"Q3models.qrk"
  1910.         AlwaysPak = ""
  1911.         PakExt = ".pk3"
  1912.         PakFormat = "*.PK3"
  1913.         Console = "1"
  1914.         Form = "GameQuake3"
  1915.         LightFactor = '0.9'
  1916.         3DLight = '512'
  1917.         PakExtra1 = ".aas"  // PAK extra files into pak file (ie maps/mapname.aas)
  1918.         BrushDecimalPlaces = '5'
  1919.       }
  1920.  
  1921.       RTCW:config =
  1922.       {
  1923.         Game = "RTCW"
  1924.         Code = "d" // Hardcoded value in Setup.PAS
  1925.         Program = "WOLFMP.EXE +set sv_pure 0"
  1926.  
  1927.         Directory = "c:\Progra~1\Return~1"
  1928.         CheckDirectory = "WOLFSP.EXE"
  1929.  
  1930.         CD = ""
  1931.         CDDir = ""
  1932.  
  1933.         MapLimit = '65536 65536 65536'
  1934.  
  1935.         MapCommentsPrefix = "//"
  1936.         OutputMapFormat="Brush Primitives"
  1937.         AlwaysWriteThreeFields = "1"
  1938.  
  1939.         StupidBuildToolKludge = "" // GTKRadiant's Q3MAP.EXE seems to work, when '-game wolf' and -fs_basepath <gamepath>' are applied.
  1940.         BuildPgm1  = "Q3MAP2.EXE"
  1941.         BuildArgs1 = "-game "$22"wolf"$22" -fs_basepath "$22"%basepath%"$22" "$22"%file%"$22
  1942.  
  1943.         BuildCheck1 = "+BSP,-LIN{LoadLinFile}"
  1944.         BuildPgm2  = "Q3MAP2.EXE"
  1945.         BuildArgs2 = "-game "$22"wolf"$22" -fs_basepath "$22"%basepath%"$22" -vis -saveprt "$22"%file%"$22
  1946.         BuildPgm3  = "Q3MAP2.EXE"
  1947.         BuildArgs3 = "-game "$22"wolf"$22" -fs_basepath "$22"%basepath%"$22" -vlight "$22"%file%"$22
  1948.         BuildPgm4 = "BSPC.EXE"
  1949.         BuildArgs4 = "-threads 1 -ext _b0 -cfg %buildpgmsdir%\aascfg_sm.c -bsp2aas ..\%output%\%file%.bsp -output ..\%output%\maps"
  1950. //        BuildCheck4= "+AAS"  // it's actually _b0.aas
  1951.         BuildPgm5 = "BSPC.EXE"
  1952.         BuildArgs5 = "-threads 1 -ext _b1 -cfg %buildpgmsdir%\aascfg_lg.c -bsp2aas %basepath%\%output%\%file%.bsp -output ..\%output%\maps"
  1953.         TexturesPath = "textures/"
  1954.         ShadersPath = "scripts/"
  1955.         Q2TexFlags = "1"
  1956.  
  1957.         BezierPatchSupport = "1" // this game supports bezier-patches
  1958.         BezierPatchPluginPrefixes = "MB2" // Prefix of the MB2*.PY files. You can also specify the value: "MB2"$0D"MB3"$0D"MB4"
  1959.  
  1960.         DefaultTexture = "xlab_wall/xconcrete_c53b"
  1961.         DefaultTextureTrigger = "common/trigger"
  1962.         DefaultTextureOrigin = "common/origin"
  1963.         DefaultTextureClip = "common/clip"
  1964.         DefaultTextureCaulk = "common/caulk"
  1965.         DefaultTextureScale = "0.5"
  1966.  
  1967.         TextureFormat = ".tga"                  // primary texture fileextension
  1968.         TextureFileExtensions = ".tga,.jpg"     // possible texture fileextensions
  1969.         TextureWriteFormat = ".tga"
  1970.         TextureShaders = "scripts/quark.shader"
  1971.  
  1972.         BaseDir = "main"
  1973.         tmpQuArK = "tmpQuArK"
  1974.  
  1975.         Palette = ":pics/colormap.pcx"
  1976.         ExtraCmdLine = "+set fs_game %s"
  1977.         RunMapCmdLine = " +devmap %s" // won't work, but open console and
  1978.                                       //   run the map by /spmap <mapname> in the console
  1979.         AddOns = "DataRTCW.qrk"$0D"Q3ArchLib.qrk"
  1980.         AlwaysPak = ""
  1981.         PakExt = ".pk3"
  1982.         PakFormat = "*.PK3"
  1983.         Console = "1"
  1984.         Form = "GameRTCW"
  1985.         LightFactor = '0.9'
  1986.         3DLight = '512'
  1987.         PakExtra1 = ".aas"  // PAK extra files into pak file (ie maps/mapname.aas)
  1988.         BrushDecimalPlaces = '5'
  1989.       }
  1990.  
  1991.       Sin:config =
  1992.       {
  1993.         Game = "Sin"
  1994.         Code = "C" // Hardcoded value in Setup.PAS
  1995.  
  1996.         Program = "Sin.EXE"
  1997.  
  1998.         Directory = "\Sin"
  1999.         CheckDirectory = "SIN.EXE"
  2000.  
  2001.         CD = ""
  2002.         CDDir = "Setup\Data"
  2003.  
  2004.         MapCommentsPrefix = ";"
  2005.         OutputMapFormat = "Quark etp"
  2006.  
  2007.         BuildPgm1  = "QBSP3.EXE"
  2008.         BuildArgs1 = ""
  2009.         BuildCheck1= "+BSP,-LIN{LoadLinFile}"
  2010.         BuildPgm2  = "QVIS3.EXE"
  2011.         BuildArgs2 = ""
  2012.         BuildPgm3  = "QRAD3.EXE"
  2013.         BuildArgs3 = ""
  2014.  
  2015.         TexturesPath = "textures/"
  2016.         Q2TexFlags = "1"
  2017.  
  2018.         DefaultTexture = "intro/wl_outbrick1a"
  2019.         DefaultTextureTrigger = "intro/wl_outbrick1a" //FIXME
  2020.         DefaultTextureClip = "intro/clip" //FIXME
  2021.  
  2022.         TextureFormat = ".swl"
  2023.         TextureWriteFormat = ".swl"
  2024.  
  2025.         BaseDir = "base"
  2026.         tmpQuArK = "tmpQuArK"
  2027.  
  2028.         Palette = ":pics/colormap.pcx"
  2029.         //Gradient = "pics/colormap.pcx"
  2030.         ExtraCmdLine = "+set game %s"
  2031.         RunMapCmdLine = " +map %s"
  2032.         AddOns = "DataSin.qrk"
  2033.         AlwaysPak = ""
  2034.         PakExt = ".sin"
  2035.         PakFormat = "PAK#.SIN"
  2036.         Console = "1"
  2037.         Form = "GameSin"
  2038.         LightFactor = '0.9'
  2039.         3DLight = '512'
  2040.         BrushDecimalPlaces = '5'
  2041.       }
  2042.  
  2043.       SOF:config =
  2044.       {
  2045.         Game = "SOF"
  2046.         Code = "E" // Hardcoded value in Setup.PAS
  2047.  
  2048.         Program = "sof.EXE"
  2049.  
  2050.         Directory = "\SOF"
  2051.         CheckDirectory = "SOF.EXE"
  2052.  
  2053.         CD = ""
  2054.         CDDir = "Install\Data"
  2055.  
  2056.         MapCommentsPrefix = ";"
  2057.         OutputMapFormat = "Classic Quake"
  2058.  
  2059.         StupidBuildToolKludge = "1" //those guys should get shot for that
  2060.         BuildPgm1  = "SOFBSP.EXE"
  2061.         BuildArgs1 = ""
  2062.         BuildCheck1= "+BSP,-LIN{LoadLinFile}"
  2063.         BuildPgm2  = "SOFVIS.EXE"
  2064.         BuildArgs2 = ""
  2065.         BuildPgm3  = "SOFARGHRAD.EXE"
  2066.         BuildArgs3 = "-gamedir .. -moddir ."
  2067.  
  2068.         TexturesPath = "textures/"
  2069.         Q2TexFlags = "1"
  2070.  
  2071.         DefaultTexture = "armory/1_2_subfloor1"
  2072.         DefaultTextureTrigger = "armory/trigger"
  2073.         DefaultTextureOrigin = "armory/origin"
  2074.         DefaultTextureClip = "armory/clip"
  2075.  
  2076.         walTrick = "1"     // FIXME is that needed ?
  2077.         TextureFormat = ".m32"
  2078.         TextureWriteFormat = ".m32"
  2079.  
  2080.         BaseDir = "base"
  2081.         tmpQuArK = "tmpQuArK"
  2082.  
  2083.         ExtraCmdLine = "+set game %s"
  2084.         RunMapCmdLine = " +map %s"
  2085.         AddOns = "DataSOF.qrk"
  2086.         AlwaysPak = ""
  2087.         PakExt = ".pak"
  2088.         Console = "1"
  2089.         Form = "GameSOF"
  2090.         LightFactor = '0.90000'
  2091.         3DLight = '512'
  2092.         BrushDecimalPlaces = '5'
  2093.       }
  2094.  
  2095.       SoF2:config =
  2096.       {
  2097.         Game = "SoF2"
  2098.         Code = "h" // Hardcoded value in Setup.PAS
  2099.         Program = "SoF2MP.EXE +set sv_pure 0"
  2100.  
  2101.         Directory = "\SoF2"
  2102.         CheckDirectory = "SoF2MP.EXE"
  2103.  
  2104.         CD = ""
  2105.         CDDir = ""
  2106.  
  2107.         MapLimit = '65536 65536 65536'
  2108.  
  2109.         MapCommentsPrefix = "//"
  2110.         OutputMapFormat="Classic Quake"
  2111.         AlwaysWriteThreeFields = "1"
  2112.  
  2113.         StupidBuildToolKludge = "1" // GTKRadiant's Q3MAP.EXE seems to work, when '-game wolf' and -fs_basepath <gamepath>' are applied.
  2114.         BuildPgm1  = "SOF2MAP.EXE"
  2115.         BuildArgs1 = "-bsp"
  2116.         BuildCheck1= "+BSP,-LIN{LoadLinFile}"
  2117.         BuildPgm2  = "SOF2MAP.EXE"
  2118.         BuildArgs2 = "-vis -saveprt"
  2119.         BuildPgm3  = "SOF2MAP.EXE"
  2120.         BuildArgs3 = "-light"
  2121.         BuildPgm4  = "SOF2MAP.EXE"
  2122.         BuildArgs4 = "-all"
  2123.  
  2124.         TexturesPath = "textures/"
  2125.         ShadersPath = "shaders/"
  2126.         Q2TexFlags = "1"
  2127.  
  2128.         BezierPatchSupport = "1" // this game supports bezier-patches
  2129.         BezierPatchPluginPrefixes = "MB2" // Prefix of the MB2*.PY files. You can also specify the value: "MB2"$0D"MB3"$0D"MB4"
  2130.  
  2131.         DefaultTexture = "jordan/wall_stucco02"
  2132.         DefaultTextureTrigger = "tools/_trigger"
  2133.         DefaultTextureOrigin = "tools/_origin"
  2134.         DefaultTextureClip = "tools/_clip"
  2135.         DefaultTextureCaulk = "tools/_caulk"
  2136.         DefaultTextureScale = "0.5"
  2137.  
  2138.         TextureFormat = ".tga"                  // primary texture fileextension
  2139.         TextureFileExtensions = ".tga,.jpg"     // possible texture fileextensions
  2140.         TextureWriteFormat = ".tga"
  2141.         TextureShaders = "shaders/quark.shader"
  2142.  
  2143.         BaseDir = "base"
  2144.         tmpQuArK = "tmpQuArK"
  2145.  
  2146.         Palette = ":pics/colormap.pcx"
  2147.         ExtraCmdLine = "+set fs_game %s"
  2148.         RunMapCmdLine = " +devmap %s"
  2149.         AddOns = "DataSoF2.qrk"$0D"Q3ArchLib.qrk"
  2150.         AlwaysPak = ""
  2151.         PakExt = ".pk3"
  2152.         PakFormat = "*.PK3"
  2153.         Console = "1"
  2154.         Form = "GameSoF2"
  2155.         LightFactor = '0.9'
  2156.         3DLight = '512'
  2157.         PakExtra1 = ".nav"  // PAK extra files into pak file (ie maps/mapname.nav)
  2158.         BrushDecimalPlaces = '5'
  2159.       }
  2160.  
  2161.       STVEF:config =
  2162.       {
  2163.         Game = "STVEF"
  2164.         Code = "b" // Hardcoded value in Setup.PAS
  2165.  
  2166.         Program = "STVoy.EXE +set sv_pure 0"
  2167.  
  2168.         Directory = ""
  2169.         CheckDirectory = "STVOY.EXE"
  2170.  
  2171.         CD = ""
  2172.         CDDir = "Setup\BaseEF"
  2173.  
  2174.         MapCommentsPrefix = "//"
  2175.         OutputMapFormat="Brush Primitives"
  2176.         AlwaysWriteThreeFields = "1"
  2177.  
  2178.         StupidBuildToolKludge = "1" //those guys should get shot for that
  2179.         BuildPgm1  = "Q3MAP.EXE"
  2180.         BuildArgs1 = "-qdir stvef"
  2181.         BuildCheck1= "+BSP,-LIN{LoadLinFile}"
  2182.         BuildPgm2  = "Q3MAP.EXE"
  2183.         BuildArgs2 = "-vis -qdir stvef"
  2184.         BuildPgm3  = "Q3MAP.EXE"
  2185.         BuildArgs3 = "-light -qdir stvef"
  2186.         BuildPgm4  = "BSPC.EXE"
  2187.         BuildArgs4 = "-bsp2aas"
  2188.         BuildCheck4= "+AAS"
  2189.  
  2190.         TexturesPath = "textures/"
  2191.         ShadersPath = "scripts/"
  2192.         Q2TexFlags = "1"
  2193.  
  2194.         BezierPatchSupport = "1" // this game supports bezier-patches
  2195.         BezierPatchPluginPrefixes = "MB2" // Prefix of the MB2*.PY files. You can also specify the value: "MB2"$0D"MB3"$0D"MB4"
  2196.  
  2197.         DefaultTexture = "cargo/walllow"
  2198.         DefaultTextureTrigger = "common/trigger"
  2199.         DefaultTextureClip = "common/clip"
  2200.         DefaultTextureOrigin = "common/origin"
  2201.         DefaultTextureCaulk = "common/caulk"
  2202.  
  2203.         TextureFormat = ".tga"                  // primary texture fileextension
  2204.         TextureFileExtensions = ".tga,.jpg"     // possible texture fileextensions
  2205.         TextureWriteFormat = ".tga"
  2206.         TextureShaders = "scripts/quark.shader"
  2207.  
  2208.         BaseDir = "baseEF"
  2209.         tmpQuArK = "tmpquark"
  2210. //        tmpQuArK = "BaseEF"
  2211.         Palette = ":pics/colormap.pcx"
  2212.         ExtraCmdLine = "+set fs_game %s"
  2213.         RunMapCmdLine = " +devmap %s"
  2214.         AddOns = "DataSTVEF.qrk"
  2215.         AlwaysPak = ""
  2216.         PakExt = ".pk3"
  2217.         PakFormat = "*.PK3"
  2218.         Console = "1"
  2219.         Form = "GameSTVEF"
  2220.         LightFactor = '0.9'
  2221.         3DLight = '512'
  2222.         BrushDecimalPlaces = '5'
  2223.       }
  2224.  
  2225.       Sylphis:config =
  2226.       {
  2227.         Game = "Sylphis"
  2228.         Code = "i"
  2229.         Program = "sylphis.exe"
  2230.         Directory = "c:\sylphis"
  2231.         CheckDirectory = "sylphis.exe"
  2232.         MapCommentsPrefix = "//"
  2233.         TexturesPath = "textures/"
  2234.         ShadersPath = "scripts/"
  2235.         Q2TexFlags = "1"
  2236.       BuildPgmsDir = "c:\sylphis\tools"
  2237.         BuildPgm1 = "mc.exe"
  2238.         BuildArgs1 = "-read %mapfile% -write"
  2239.         DefaultTexture = "none"
  2240.         DefaultTextureTrigger = "common/trigger"
  2241.         DefaultTextureOrigin = "common/origin"
  2242.         DefaultTextureClip = "common/clip"
  2243.         DefaultTextureCaulk = "common/caulk"
  2244.         DefaultTextureScale = "0.25"
  2245.         LightFactor = '0.90000'
  2246.         TextureFormat = ".jpg"
  2247.         TextureFileExtensions = ".png,.tga,.jpg"
  2248.         TextureWriteFormat = ".jpg"
  2249.         TextureShaders = "scripts/quark.shader"
  2250.     WateryTex = ")"
  2251.         BaseDir = "base"
  2252.         tmpQuArK = "tmpQuArK"
  2253.         Palette = ""
  2254.         PakExt = ".col"
  2255.         PakFormat = "*.COL"
  2256.         ExtraCmdLine = " -gamedir %s"
  2257.         RunMapCmdLine = " -map %s.cmap"
  2258.         AddOns = "DataSylphis.qrk"$0D"Sylphis_autogen.qrk"
  2259.         Console = "1"
  2260.         Form = "GameSylphis"
  2261.         BrushDecimalPlaces = '5'
  2262.       }
  2263.  
  2264.       Torque:config =
  2265.       {
  2266.         Game = "Torque"
  2267.         Code = "g" // Hardcoded value in Setup.PAS
  2268.         Program = "map2dif_DEBUG.exe"
  2269.         Directory = "c:\Torque"
  2270.         //CheckDirectory = "map2dif_DEBUG.exe"
  2271.         MapCommentsPrefix = "//"
  2272.         //   StupidBuildToolKludge = "1"
  2273.         //******************************************************************************
  2274.         // 220 MAPVERSION
  2275.         // -v verbose -h Process for final build (exhaustive BSP search)(220 mapversion)
  2276.         BuildPgm1 = "c:\torque\tmpquark\map2dif_DEBUG.exe"
  2277.         BuildArgs1 = "-v -h -o ./maps -t ./textures %mapfile%"
  2278.         //
  2279.         // -l Process as low detail shape
  2280.         BuildPgm2 = "c:\torque\tmpquark\map2dif_DEBUG.exe"
  2281.         BuildArgs2 = "-v -l -o ./maps -t ./textures %mapfile%"
  2282.         //
  2283.         // -g Generate navigation graph info
  2284.         BuildPgm3 = "c:\torque\tmpquark\map2dif_DEBUG.exe"
  2285.         BuildArgs3 = "-v -g -o ./maps -t ./textures %mapfile%"
  2286.         //
  2287.         // -e Do extrusion test
  2288.         BuildPgm4 = "c:\torque\tmpquark\map2dif_DEBUG.exe"
  2289.         BuildArgs4 = "-v -e -o ./maps -t ./textures %mapfile%"
  2290.         //
  2291.         // -n Noisy error/statistic reporting
  2292.         BuildPgm5 = "c:\torque\tmpquark\map2dif_DEBUG.exe"
  2293.         BuildArgs5 = "-v -n -o ./maps -t ./textures %mapfile%"
  2294.         //
  2295.         // -p Include a preview bitmap in the interior file
  2296.         BuildPgm6 = "c:\torque\tmpquark\map2dif_DEBUG.exe"
  2297.         BuildArgs6 = "-v -p -o ./maps -t ./textures %mapfile%"
  2298.         //*****************************************************************************
  2299.         // USING LEWIS BRUCK'S -q 3 VERSION
  2300.         // -v verbose -h Process for final build (exhaustive BSP search)(q3 mapversion)
  2301.         BuildPgm9 = "c:\torque\tmpquark\map2dif_DEBUG.exe"
  2302.         BuildArgs9 = "-v -h -q 3 -o ./maps -t ./textures %mapfile%"
  2303.         //*****************************************************************************
  2304.         TexturesPath = "textures/"
  2305.         //   DefaultTexture = ""
  2306.         //   DefaultTextureTrigger = "trigger"
  2307.         //   DefaultTextureOrigin = "origin"
  2308.         //   DefaultTextureClip = "clip"
  2309.         //   DefaultTextureCaulk = "caulk"
  2310.         //   DefaultTextureScale = "0.5"
  2311.         DefaultTexture = ""
  2312.         TextureFormat = ".jpg"
  2313.         TextureWriteFormat = ".jpg"
  2314.         BaseDir = "base"
  2315.         tmpQuArK = "tmpQuArK"
  2316.         //   AlwaysPak = ""
  2317.         //   PakExt = ".pk3"
  2318.         //   PakFormat = "*.PK3"
  2319.         ExtraCmdLine = ""
  2320.         RunMapCmdLine = " %s"
  2321.         AddOns = "DataTorque.qrk"
  2322.         Console = "1"
  2323.         Form = "GameTorque"
  2324.         LightFactor = '0.9'
  2325.         3DLight = '512'
  2326.         //   PlayerClass = "X"
  2327.         BrushDecimalPlaces = '16'
  2328.       }
  2329.  
  2330.       WildWest:config =
  2331.       {
  2332.         // WildWest game add on by SilverPaladin (Capt. Queeg to WildWest folk)
  2333.         Game = "WildWest"
  2334.         Code = "w" // Hardcoded value in Setup.PAS
  2335.         Program = "WOLFMP.EXE +set sv_pure 0 +set fs_game WildWest "
  2336.  
  2337.         Directory = "C:\Progra~1\Return~1\"
  2338.         CheckDirectory = "WildWest.EXE"
  2339.  
  2340.         CD = ""
  2341.         CDDir = "WildWest"
  2342.  
  2343.         MapLimit = '65536 65536 65536'
  2344.  
  2345.         MapCommentsPrefix = "//"
  2346.         OutputMapFormat="Brush Primitives"
  2347.         AlwaysWriteThreeFields = "1"
  2348.         StupidBuildToolKludge = "" // GTKRadiant's Q3MAP.EXE seems to work, when '-game wolf' and -fs_basepath <gamepath>' are applied.
  2349.         BuildPgmsDir = "c:\Progra~1\Return~1\Radiant"
  2350.         BuildPgm1  = "Q3MAP2.EXE"
  2351.         BuildArgs1 = "-game wolf -fs_basepath "$22"%basepath%."$22" -fs_game WildWest -bsp -meta "$22"%mapfile%"$22
  2352.         BuildCheck1= "+BSP,-LIN{LoadLinFile}"
  2353.         BuildPgm2  = "Q3MAP2.EXE"
  2354.         BuildArgs2 = "-game wolf -fs_basepath "$22"%basepath%."$22" -fs_game WildWest -vis -saveprt "$22"%mapfile%"$22
  2355.         BuildPgm3  = "Q3MAP2.EXE"
  2356.         BuildArgs3 = "-game wolf -fs_basepath "$22"%basepath%."$22" -fs_game WildWest -light -bounce 10 -fast -samples 3 -thresh 0.3 "$22"%mapfile%"$22
  2357.         BuildPgm4  = "Q3MAP2.EXE"
  2358.         BuildArgs4 = "-game wolf -fs_basepath "$22"%basepath%."$22" -fs_game WildWest "$22"%mapfile%"$22
  2359.         BuildCheck4= "+BSP,-LIN{LoadLinFile}"
  2360.         BuildPgm5  = "Q3MAP2.EXE"
  2361.         BuildArgs5 = "-game wolf -fs_basepath "$22"%basepath%."$22" -fs_game WildWest -vlight "$22"%mapfile%"$22
  2362.         TexturesPath = "textures/"
  2363.         ShadersPath = "scripts/"
  2364.         Q2TexFlags = "1"
  2365.  
  2366.         BezierPatchSupport = "1" // this game supports bezier-patches
  2367.         BezierPatchPluginPrefixes = "MB2" // Prefix of the MB2*.PY files. You can also specify the value: "MB2"$0D"MB3"$0D"MB4"
  2368.  
  2369.         DefaultTexture = "cowboys/kb_wood03"
  2370.         DefaultTextureTrigger = "common/trigger"
  2371.         DefaultTextureOrigin = "common/origin"
  2372.         DefaultTextureClip = "common/clip"
  2373.         DefaultTextureCaulk = "common/caulk"
  2374.         DefaultTextureScale = "0.5"
  2375.  
  2376.         TextureFormat = ".tga"                  // primary texture fileextension
  2377.         TextureFileExtensions = ".tga,.jpg"     // possible texture fileextensions
  2378.         TextureWriteFormat = ".tga"
  2379.         TextureShaders = "scripts/quark.shader"
  2380.  
  2381.         BaseDir = "WildWest"
  2382.         tmpQuArK = "WildWest"
  2383.  
  2384.         Palette = ":pics/colormap.pcx"
  2385.         ExtraCmdLine = ""
  2386.         RunMapCmdLine = " +devmap %s" // won't work, but open console and
  2387.                                       //   run the map by /spmap <mapname> in the console
  2388.         AddOns = "DataWildWest.qrk"$0D"Q3ArchLib.qrk"
  2389.         AlwaysPak = ""
  2390.         PakExt = ".pk3"
  2391.         PakFormat = "*.PK3"
  2392.         Console = "1"
  2393.         Form = "GameWildWest"
  2394.         LightFactor = '0.9'
  2395.         3DLight = '512'
  2396.         PakExtra1 = ".aas"  // PAK extra files into pak file (ie maps/mapname.aas)
  2397.         BrushDecimalPlaces = '5'
  2398.       }
  2399.     }
  2400.  
  2401.     Map:config =
  2402.     {
  2403.       Mouse:config =
  2404.       {
  2405.         Left        = "S"
  2406.         LeftShift   = "FS"
  2407.         LeftCtrl    = "ST"
  2408.         Right       = "SM"
  2409.         RightShift  = "M"
  2410.         RightCtrl   = "STM"
  2411.         Middle      = "+"
  2412.         MiddleShift = ""
  2413.         MiddleCtrl  = "-"
  2414.         LeftDrag        = "RS"
  2415.         LeftDragShift   = "C"
  2416.         LeftDragCtrl    = "RST"
  2417.         RightDrag       = "S"
  2418.         RightDragShift  = "Z"
  2419.         RightDragCtrl   = "R+"
  2420.         MiddleDrag      = "Z"
  2421.         MiddleDragShift = "R-"
  2422.         MiddleDragCtrl  = "R+"
  2423.         Form = "MapMouse"
  2424.       }
  2425.       Keys:config =
  2426.       {
  2427.         GridPlus = $C0
  2428.         GridMinus = $BA
  2429.         ZoomIn = "k"
  2430.         ZoomOut = "m"
  2431.         MoveLeft = "%"
  2432.         MoveRight = "'"
  2433.         MoveUp = "&"
  2434.         MoveDown = "("
  2435.         Form = "MapKeys"
  2436.       }
  2437.       Options:config =
  2438.       {
  2439.         DrawAxis                = "1"
  2440.         SolidGrid               = ""
  2441.         GridVisible             = "1"
  2442.         GridActive              = "1"
  2443.         GridVisibleTex          = "1"
  2444.         RedLines2               = ""
  2445.       //ShowWholeLevel          = ""
  2446.       //GrayOutOfView           = "1"
  2447.       //HideOutOfView           = ""
  2448.       //Textured                = ""
  2449.         CrossCursor             = "1"
  2450.         AutoAdjustNormal        = ""
  2451.         DrawMapLimit            = "1"
  2452.         PagesLocked             = ""
  2453.         TexPanelActive          = "1"
  2454.         TexPanelLight           = "1"
  2455.         BBoxAlways              = "1"
  2456.         BBoxSelected            = "1"
  2457.         DeleteFaces             = "1"
  2458.       //ViewModels              = "1"
  2459.         NoScrollBars            = "1"
  2460.         PolySubtractMax         = ""
  2461.         HideFaces               = ""
  2462.         AutoClosePoly           = ""
  2463.         Recenter                = "1"
  2464.         HandleHints             = "1"
  2465.         TreeKeybDelay           = "1"
  2466.         IgnoreToBuild           = "1"
  2467.         DisableMapComments      = ""
  2468. //        DisableEnhTex           = ""
  2469.         DisableFPCoord          = ""
  2470. // Experimental; disable in distributions:
  2471. //        UseIntetralVertices     = ""
  2472.         AutoCheckMap            = "1"
  2473.         EntityLinesDispersion   = "1"
  2474.         CompassNumbers          = "1"
  2475.         ComputePolys            = "1"
  2476.         HideMouseDrag           = "1"
  2477.         Form = "MapOptions"
  2478.       }
  2479.       Building:config =
  2480.       {
  2481.         DefPoly = "128x128x128"
  2482.         WallWidth = '-8'
  2483.         mpOffset = '0 0 64'
  2484.         mpZoom = '2'
  2485.         mpRotate = '15'
  2486.         ForceAngleStep = '15'
  2487.         AutoSave = '10'
  2488.         AutoSaveRun = "1"
  2489.         LinearWarning = "1"
  2490.         //BezierCenterX = '-32'
  2491.         //BezierCenterY = '-32'
  2492.         Form = "MapBuilding"
  2493.       }
  2494.       Layouts:config =
  2495.       {
  2496.         _layout = "4 views (a)"
  2497.       }
  2498.       Display:config =
  2499.       {
  2500.         NormalVector = '40'
  2501.         GridStep = '32'
  2502.         GridMinStep = '5'
  2503.         MapLimit = '4096 4096 4096'
  2504.         GridHighlight = "8"
  2505.         GridHFactor = '2'
  2506.         // Rotate3D = '80 2'     // 80 degrees per second during 2 seconds
  2507.         FreeZoom = '1'
  2508.         ViewMode = $01      // gray out of view by default
  2509.         ArrowSize = '40 27'
  2510.         Form = "MapDisplay"
  2511.       }
  2512.       Colors:config =
  2513.       {
  2514.         InvertedColors = ""
  2515.         ViewXZ     = $E8E8B8
  2516.         ViewXY     = $E8DCB8
  2517.         SelXZ      = $0080C0
  2518.         SelXY      = $0090C0
  2519.         Gray       = $BABABA
  2520.         Axis       = $A6CAF0
  2521.         GridXZ     = $008000
  2522.         GridXY     = $808000
  2523.         GridLines  = $D0D0FF
  2524.         BrEnt      = $800000
  2525.         Duplicator = $0000FF
  2526.         Tag        = $FF0000
  2527.         GrayImage  = $FF0000
  2528.         BSP        = $008080
  2529.         Digger     = $FF00FF
  2530.         Linear     = $FF0080
  2531.         Bezier     = $008080
  2532.         Form = "MapColors"
  2533.       }
  2534.     }
  2535.     Model:config =
  2536.     {
  2537.       Mouse:config =
  2538.       {
  2539.         Left        = "S"
  2540.         LeftShift   = ""
  2541.         LeftCtrl    = "ST"
  2542.         Right       = "SM"
  2543.         RightShift  = "M"
  2544.         RightCtrl   = "STM"
  2545.         Middle      = "+"
  2546.         MiddleShift = ""
  2547.         MiddleCtrl  = "-"
  2548.         LeftDrag        = "RS"
  2549.         LeftDragShift   = "C"
  2550.         LeftDragCtrl    = "RST"
  2551.         RightDrag       = "S"
  2552.         RightDragShift  = "Z"
  2553.         RightDragCtrl   = "R+"
  2554.         MiddleDrag      = "Z"
  2555.         MiddleDragShift = "R-"
  2556.         MiddleDragCtrl  = "R+"
  2557.         Form = "MapMouse"
  2558.       }
  2559.       Options:config =
  2560.       {
  2561.         DrawAxis           = "1"
  2562.         DrawMapLimit       = "1"
  2563.         SolidGrid          = ""
  2564.         GridVisible        = "1"
  2565.         GridActive         = "1"
  2566.         GridVisibleTex     = ""
  2567.         CompassNumbers     = "1"
  2568.         NoScrollBars       = "1"
  2569.         CrossCursor        = ""
  2570.         HideMouseDrag      = ""
  2571.         AutoAdjustNormal   = ""
  2572.         PagesLocked        = ""
  2573.         HandleHints        = "1"
  2574.  
  2575.         LinearBox          = ""
  2576.         TreeKeybDelay      = ""
  2577.         Form = "MdlOptions"
  2578.       }
  2579.       Building:config =
  2580.       {
  2581.         WallWidth = '-8'
  2582.         mpOffset = '0 0 64'
  2583.         mpZoom = '2'
  2584.         mpRotate = '15'
  2585.         ForceAngleStep = '15'
  2586.         LinearWarning = "1"
  2587.         Form = "MdlBuilding"
  2588.       }
  2589.       Display:config =
  2590.       {
  2591.         NormalVector = '40'
  2592.         GridStep = '16'
  2593.         GridMinStep = '5'
  2594.         MapLimit = '512 512 512'
  2595.         GridHighlight = "8"
  2596.         GridHFactor = '2'
  2597.         FreeZoom = '1'
  2598.         ViewMode = $01      // gray out of view by default
  2599.         ArrowSize = '40 27'
  2600.         HandlesDelay = '0.5'
  2601.         Form = "MdlDisplay"
  2602.       }
  2603.       Colors:config =
  2604.       {
  2605.         InvertedColors = ""
  2606.         ViewXZ     = $E8E8B8
  2607.         ViewXY     = $E8DCB8
  2608.         SelXZ      = $0080C0
  2609.         SelXY      = $0090C0
  2610.         Gray       = $BABABA
  2611.         Axis       = $A6CAF0
  2612.         GridXZ     = $008000
  2613.         GridXY     = $808000
  2614.         GridLines  = $D0D0FF
  2615.         Tag        = $FF0000
  2616.         GrayImage  = $FF0000
  2617.         Linear     = $FF0080
  2618.         Vertices   = $FF0000
  2619.         Form = "MdlColors"
  2620.       }
  2621.       Layouts:config =
  2622.       {
  2623.         _layout = "Classic"
  2624.       }
  2625.     }
  2626.     Toolbars and Menus:config =
  2627.     {
  2628.       Texture Browser:config =
  2629.       {
  2630.         ImageListTextureDimension = "64"
  2631.         ImageListLoadNoOfTexAtEachCall = "3"
  2632.         Form = "Toolbars_TextureBrowser"
  2633.       }
  2634.     }
  2635.   }
  2636.   ConfigForms.qrk =
  2637.   {
  2638.     MapDisplay:form =          // ":form" objects are forms for editing object Specific/Args
  2639.     {                          // these ones are used in the Configuration dialog box
  2640.       NormalVector: =
  2641.       {
  2642.         Txt = "Length of the normal vector"
  2643.         Typ = "EF1"    // Edit Float, 1 value
  2644.         Min = '1'
  2645.       }
  2646.       GridStep: =
  2647.       {
  2648.         Txt = "Grid step"
  2649.         Typ = "EF1"    // Edit Float, 1 value
  2650.         Min = '0'
  2651.       }
  2652.       GridMinStep: =
  2653.       {
  2654.         Txt = "Hide grid dots if denser than"
  2655.         Typ = "EF1"    // Edit Float, 1 value
  2656.         Min = '0'
  2657.       }
  2658.       GridHighlight: =
  2659.       {
  2660.         Txt = "Highlight every ...th grid line"
  2661.         Typ = "E"
  2662.         Hint = "Highlight grid dots or lines periodically (no value disables this feature)"
  2663.       }
  2664.       GridHFactor: =
  2665.       {
  2666.         Txt = "Highlight them by a factor of"
  2667.         Typ = "EF1"
  2668.         Min = '0'
  2669.         Max = '10'
  2670.         Hint = "How much highlighted are the highlighted dots or lines ? (more or less than 1 to mean more or less visible than others)"
  2671.       }
  2672.       FreeZoom: =
  2673.       {
  2674.         Txt = "'Mouse Free Zoom' sensitivity"
  2675.         Typ = "EF1"
  2676.         Hint = "By default, Mouse Free Zoom is Shift-Middle-mouse-button"$0D"Enter a negative value to reverse 'In' and 'Out' directions"
  2677.       }
  2678.     }
  2679.     MdlDisplay:form =
  2680.     {
  2681.       GridStep: =
  2682.       {
  2683.         Txt = "Grid step"
  2684.         Typ = "EF1"    // Edit Float, 1 value
  2685.         Min = '0'
  2686.       }
  2687.       GridMinStep: =
  2688.       {
  2689.         Txt = "Hide grid dots if denser than"
  2690.         Typ = "EF1"    // Edit Float, 1 value
  2691.         Min = '0'
  2692.       }
  2693.       GridHighlight: =
  2694.       {
  2695.         Txt = "Highlight every ...th grid line"
  2696.         Typ = "E"
  2697.         Hint = "Highlight grid dots or lines periodically (no value disables this feature)"
  2698.       }
  2699.       GridHFactor: =
  2700.       {
  2701.         Txt = "Highlight them by a factor of"
  2702.         Typ = "EF1"
  2703.         Min = '0'
  2704.         Max = '10'
  2705.         Hint = "How much highlighted are the highlighted dots or lines ? (more or less than 1 to mean more or less visible than others)"
  2706.       }
  2707.       FreeZoom: =
  2708.       {
  2709.         Txt = "'Mouse Free Zoom' sensitivity"
  2710.         Typ = "EF1"
  2711.         Hint = "By default, Mouse Free Zoom is Shift-Middle-mouse-button"$0D"Enter a negative value to reverse 'In' and 'Out' directions"
  2712.       }
  2713.       sep: = {Typ="S" Txt = ""}
  2714.       HandlesDelay: =
  2715.       {
  2716.         Txt = "Delay to display handles"
  2717.         Typ = "EF1"
  2718.         Hint = "If non-zero, some handles are not displayed immediately but after this delay (seconds)"
  2719.       }
  2720.     }
  2721.  
  2722.     t_ProgramHint:incl = {
  2723.       Hint="Specify the game's executable (.EXE) and additional command-line arguments."
  2724.         $0D
  2725.         $0D"QuArK will automatically append arguments to start the .BSP-file in the game,"
  2726.         $0D"and arguments to tell the game to use a different startup base-directory."
  2727.     }
  2728.     t_GameBuildPgm:incl = {
  2729.       DefExt="exe"
  2730.       Typ="EP"
  2731.       Txt="...program-executable (path optional)"
  2732.       Hint="Specify the build-tool executable (.EXE) for this step."
  2733.         $0D
  2734.         $0D"The absolute-path is optional, and if not given, you must"
  2735.         $0D"specify it in the 'Default directory of build-programs'."
  2736.     }
  2737.     t_GameBuildArgs:incl = {
  2738.       Typ="E"
  2739.       Txt="...fixed command-line arguments"
  2740.       Hint="Specify the additional command-line arguments for the build-tool."
  2741.         $0D
  2742.         $0D"You can use the following user-variables, which automatically will"
  2743.         $0D"be replaced at run-time. If at least one of these are used, QuArK"
  2744.         $0D"will _not_ append a '<path>/<mapfile>' to the command-line arg.,"
  2745.         $0D"so you better remember to do this yourself."
  2746.         $0D
  2747.         $0D"%file%     - Gives the map's path and filename without extension"
  2748.         $0D"%mappath%  - Gives the map's path with ending backslash"
  2749.         $0D"%mapfile%  - Gives the map's path and filename with .MAP extension"
  2750.         $0D"%basepath% - Gives the base directory of the game (see Game Settings above)"
  2751.         $0D"%gamedir%  - Gives the game directory of the game (see Game Settings above)"
  2752.         $0D
  2753.         $0D"Examples:"
  2754.         $0D"  BSPC.EXE -bps2aas %file%.BSP -output %mappath%"
  2755.         $0D"  VIS.EXE -fast %file%"
  2756.         $0D"  QRAD3.EXE -threads 4 %file%"
  2757.       // These 'user-variables' are replaced in MapQuakeMenu.PY
  2758.     }
  2759.     t_GameBuildCheck:incl = {
  2760.       Typ="C"
  2761.       Txt="...at program end, check these file-extensions:"
  2762.       Items= ""
  2763.           $0D"+BSP"
  2764.           $0D"+BSP,+PRT"
  2765.           $0D"+BSP,-LIN{LoadLinFile}"
  2766.           $0D"+AAS"
  2767.       Hint="Here you list which file-extensions that should exist or not exist,"
  2768.         $0D"after the build-program have ended."
  2769.         $0D
  2770.         $0D"Example; to make sure that a .BSP file have been created, and"
  2771.         $0D"_no_ .LIN file exists, this field should contain:     +BSP,-LIN"
  2772.         $0D
  2773.         $0D"A prefixed '+' means 'must exist'"
  2774.         $0D"A prefixed '-' means 'must not exist'"
  2775.     }
  2776.     t_GameBuildPgms:incl = {
  2777.       Console:    = {Typ="X" Txt="Run these build-programs..." Cap="in QuArK's console"}
  2778.       BuildPgmsDir:={Typ="ED" Txt="Default directory of build-programs" Hint="This directory is searched to find a build-program,"$0D"if the build-program does not have an absolute path specified."}
  2779.       StupidBuildToolKludge:={Typ="X" Txt="Run tools from base directory" Hint="When this is checked, the tools are run in the base directory,"$0D" on maps in tmpquark"}
  2780.       OutputMapFormat: = {
  2781.         Txt = "Output Map Format"
  2782.         Typ = "C"
  2783.         Items = "Classic Quake"
  2784.                $0D "Quark etp"
  2785.                $0D "Valve 220"
  2786.                $0D "Brush Primitives"
  2787.         Hint="These are set for the game's reccommended build tools.  If you don't have these," $0D " Classic Quake1/2/3 will function at a minimal level"
  2788.       }
  2789. //      Typ="X" Txt="Tools support brush primitives" Hint="When this is checked, if use brush primitives map option is also checked,"$0D" maps will be written in brush primitives format"}
  2790.       sep:        = {Typ="S" Txt="1st program"}
  2791.       BuildPgm1:  = {t_GameBuildPgm=!}
  2792.       BuildArgs1: = {t_GameBuildArgs=!}
  2793.       BuildCheck1:= {t_GameBuildCheck=!}
  2794.       sep:        = {Typ="S" Txt="2nd program"}
  2795.       BuildPgm2:  = {t_GameBuildPgm=!}
  2796.       BuildArgs2: = {t_GameBuildArgs=!}
  2797.       BuildCheck2:= {t_GameBuildCheck=!}
  2798.       sep:        = {Typ="S" Txt="3rd program"}
  2799.       BuildPgm3:  = {t_GameBuildPgm=!}
  2800.       BuildArgs3: = {t_GameBuildArgs=!}
  2801.       BuildCheck3:= {t_GameBuildCheck=!}
  2802.       sep:        = {Typ="S" Txt="4th program"}
  2803.       BuildPgm4:  = {t_GameBuildPgm=!}
  2804.       BuildArgs4: = {t_GameBuildArgs=!}
  2805.       BuildCheck4:= {t_GameBuildCheck=!}
  2806.       sep:        = {Typ="S" Txt="5th program"}
  2807.       BuildPgm5:  = {t_GameBuildPgm=!}
  2808.       BuildArgs5: = {t_GameBuildArgs=!}
  2809.       BuildCheck5:= {t_GameBuildCheck=!}
  2810.       sep:        = {Typ="S" Txt="6th program"}
  2811.       BuildPgm6:  = {t_GameBuildPgm=!}
  2812.       BuildArgs6: = {t_GameBuildArgs=!}
  2813.       BuildCheck6:= {t_GameBuildCheck=!}
  2814.       sep:        = {Typ="S" Txt="7th program"}
  2815.       BuildPgm7:  = {t_GameBuildPgm=!}
  2816.       BuildArgs7: = {t_GameBuildArgs=!}
  2817.       BuildCheck7:= {t_GameBuildCheck=!}
  2818.       sep:        = {Typ="S" Txt="8th program"}
  2819.       BuildPgm8:  = {t_GameBuildPgm=!}
  2820.       BuildArgs8: = {t_GameBuildArgs=!}
  2821.       BuildCheck8:= {t_GameBuildCheck=!}
  2822.       sep:        = {Typ="S" Txt="9th program"}
  2823.       BuildPgm9:  = {t_GameBuildPgm=!}
  2824.       BuildArgs9: = {t_GameBuildArgs=!}
  2825.       BuildCheck9:= {t_GameBuildCheck=!}
  2826.       sep:        = {Typ="S" Txt = ""}
  2827.       MapCommentsPrefix: = {
  2828.         Typ="E"
  2829.         Txt=".MAP comments prefix"
  2830.         Hint="Specify the character(s) that instruct the build-tools,"
  2831.           $0D"which lines in the .MAP file, are end-of-line comments,"
  2832.           $0D"and will be ignored."
  2833.       }
  2834.     }
  2835.     t_DefaultTexture:incl = {
  2836.       Txt = "Default texture"
  2837.       Typ = "ET"      // Edit Texture
  2838.       Hint = "Default texture when inserting polyhedrons in maps."
  2839.           $0D"An '[auto]' texture."
  2840.     }
  2841.     t_DefaultTextureTrigger:incl = {
  2842.       Txt = "Default trigger texture"
  2843.       Typ = "ET"      // Edit Texture
  2844.       Hint = "Default trigger texture when new brush-entities request it."
  2845.           $0D"An '[trigger]' texture."
  2846.     }
  2847.     t_DefaultTextureClip:incl = {
  2848.       Txt = "Default clip texture"
  2849.       Typ = "ET"      // Edit Texture
  2850.       Hint = "Default clip texture when new brush-entities request it."
  2851.           $0D"An '[clip]' texture."
  2852.     }
  2853.     t_DefaultTextureOrigin:incl = {
  2854.       Txt = "Default origin texture"
  2855.       Typ = "ET"      // Edit Texture
  2856.       Hint = "Default origin texture when new brush-entities request it."
  2857.           $0D"An '[origin]' texture."
  2858.     }
  2859.     t_DefaultTextureCaulk:incl = {
  2860.       Txt = "Default caulk texture"
  2861.       Typ = "ET"      // Edit Texture
  2862.       Hint = "Default caulk texture when new brush-entities request it."
  2863.           $0D"An '[caulk]' texture."
  2864.     }
  2865.  
  2866.     Game6DX:form =
  2867.     {
  2868.       Style = "3"
  2869.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  2870.       Program: = {
  2871.         Typ = "C"     // combo box
  2872.         Txt = "6DX command-line"
  2873.         Items = ""
  2874.         t_ProgramHint=!
  2875.       }
  2876.       Directory: =
  2877.       {
  2878.         Txt = "Directory of 6DX"
  2879.         Typ = "ED"      // Edit Directory
  2880.         Hint = "Path to the game executable"
  2881.         CheckFile = ""
  2882.       }
  2883.     //CD: =
  2884.     //{
  2885.     //  Txt = "6DX CD-ROM drive"
  2886.     //  Typ = "ED"      // Edit Directory
  2887.     //  Hint = "If you installed 6DX minimally, this is the drive of the CD-ROM."
  2888.     //  CheckFile = "INSTALL\DATA\BASE\PAK0.PAK"
  2889.     //}
  2890.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  2891.       {
  2892.         Typ = "+"
  2893.         Txt = "Installed Add-ons"
  2894.         Cap = "Add-ons..."
  2895.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  2896.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  2897.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  2898.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  2899.         cmd:macro = {Typ="M" Msg="GAMZ"}    // switches to 6DX
  2900.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  2901.       }
  2902.       Outp:tbbtn =
  2903.       {
  2904.         Typ = "+"
  2905.         Txt = "Paths and files to create"
  2906.         Cap = "Output directories..."
  2907.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  2908.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  2909.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  2910.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  2911.         cmd:macro = {Typ="M" Msg="GAMZ"}    // switches to 6DX
  2912.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  2913.       }
  2914.       sep: = {Typ="S" Txt = ""}
  2915.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  2916.       DefaultTexture: =
  2917.       {
  2918.         t_DefaultTexture = !
  2919.         GameCfg = "6DX"
  2920.       }
  2921.       DefaultTextureTrigger: =
  2922.       {
  2923.         t_DefaultTextureTrigger = !
  2924.         GameCfg = "6DX"
  2925.       }
  2926.       DefaultTextureClip: =
  2927.       {
  2928.         t_DefaultTextureClip = !
  2929.         GameCfg = "6DX"
  2930.       }
  2931.       3DLight: =
  2932.       {
  2933.         Txt = "Game Light saturation"
  2934.         Typ = "EF1"
  2935.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  2936.       }
  2937.       BrushDecimalPlaces: = {
  2938.         Txt = "No. of Decimal Places for Brushes"
  2939.         Typ = "EF1"
  2940.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  2941.         Min = '1'
  2942.         Max = '40'
  2943.       }
  2944.     //sep:        = {Typ="S" Txt = ""}
  2945.     //sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  2946.     //t_GameBuildPgms=!
  2947.       sep:        = {Typ="S" Txt = ""}
  2948.       MapCommentsPrefix: = {
  2949.         Typ="E"
  2950.         Txt=".MAP comments prefix"
  2951.         Hint="Specify the character(s) that instruct the build-tools,"
  2952.           $0D"which lines in the .MAP file, are end-of-line comments,"
  2953.           $0D"and will be ignored."
  2954.       }
  2955.     }
  2956.  
  2957.     GameCrystalSpace:form =
  2958.     {
  2959.       Style = "3"
  2960.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  2961.       Program: =
  2962.       {
  2963.         Typ = "C"
  2964.         Txt = "Crystal Space command-line"
  2965.         Items = "WalkTest.EXE"
  2966.         t_ProgramHint=!
  2967.       }
  2968.       Directory: =
  2969.       {
  2970.         Txt = "Directory of Crystal Space"
  2971.         Typ = "ED"
  2972.         Hint = "Path to the game executable"
  2973.         CheckFile = ""
  2974.       }
  2975.       AddOns:tbbtn =
  2976.       {
  2977.         Typ = "+"
  2978.         Txt = "Installed Add-ons"
  2979.         Cap = "Add-ons..."
  2980.         Icon = $666008881111111866604441999799916660CCC11011111166602444045555
  2981.          $4866602C2AA478887866602C4A24787F78666022AC48778878666022CC4788887866
  2982.          $6000407787877866608777777777784448444844487F785C77CF77CC4877785CC7C7
  2983.          $77CC488880055555555548870666608888888800666666666666666666
  2984.         cmd:macro = { Typ = "M" Msg = "GAMc" } // switches to Crystal Space (cmd=GAM, game=c)
  2985.         cmd:macro = { Typ = "M" Msg = "ADDO" } // opens Add-ons configuration dialog box
  2986.       }
  2987.       Outp:tbbtn =
  2988.       {
  2989.         Typ = "+"
  2990.         Txt = "Paths and files to create"
  2991.         Cap = "Output directories..."
  2992.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0FA
  2993.          $0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AAA220FBB003
  2994.          $22022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A0022002A200666002A
  2995.          $AAA20006666666002A200666666666660006666666
  2996.         cmd:macro = { Typ = "M" Msg = "GAMc" } // switches to Crystal Space (cmd=GAM, game=c)
  2997.         cmd:macro = { Typ = "M" Msg = "OUTP" } // opens "Output directories" dialog box
  2998.       }
  2999.       sep: = {Typ="S" Txt = ""}
  3000.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  3001.       DefaultTexture: =
  3002.       {
  3003.         t_DefaultTexture = !
  3004.         GameCfg = "Crystal Space"
  3005.       }
  3006.       3DLight: =
  3007.       {
  3008.         Txt = "Game Light saturation"
  3009.         Typ = "EF1"
  3010.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  3011.       }
  3012.       BrushDecimalPlaces: = {
  3013.         Txt = "No. of Decimal Places for Brushes"
  3014.         Typ = "EF1"
  3015.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  3016.         Min = '1'
  3017.         Max = '40'
  3018.       }
  3019.       sep:        = {Typ="S" Txt = ""}
  3020.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  3021.       t_GameBuildPgms=!
  3022.     }
  3023.  
  3024.     GameDoom3:form =
  3025.     {
  3026.       Style = "3"
  3027.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  3028.       Program: = {
  3029.         Typ = "C"     // combo box
  3030.         Txt = "Doom 3 command-line"
  3031.         Items = "Doom3.EXE +set sv_pure 0"
  3032.         t_ProgramHint=!
  3033.       }
  3034.       Directory: =
  3035.       {
  3036.         Txt = "Directory of Doom 3"
  3037.         Typ = "ED"      // Edit Directory
  3038.         Hint = "Path to the game executable"
  3039.         CheckFile = "DOOM3.EXE"
  3040.       }
  3041.       CD: =
  3042.       {
  3043.         Txt = "Doom 3 CD-ROM drive"
  3044.         Typ = "ED"      // Edit Directory
  3045.         Hint = "If you installed Quake 3 minimally, this is the drive of the CD-ROM."
  3046.         CheckFile = "Doom3\base\pak000.pk4"
  3047.       }
  3048.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  3049.       {
  3050.         Typ = "+"
  3051.         Txt = "Installed Add-ons"
  3052.         Cap = "Add-ons..."
  3053.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  3054.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  3055.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  3056.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  3057.         cmd:macro = {Typ="M" Msg="GAMj"}    // switches to Doom 3 (cmd=GAM, game=j)
  3058.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  3059.       }
  3060.       Outp:tbbtn =
  3061.       {
  3062.         Typ = "+"
  3063.         Txt = "Paths and files to create"
  3064.         Cap = "Output directories..."
  3065.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  3066.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  3067.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  3068.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  3069.         cmd:macro = {Typ="M" Msg="GAMj"}    // switches to Doom 3 (cmd=GAM, game=j)
  3070.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  3071.       }
  3072.       sep: = {Typ="S" Txt = ""}
  3073.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  3074.       DefaultTexture: =
  3075.       {
  3076.         t_DefaultTexture = !
  3077.         GameCfg = "Doom 3"
  3078.       }
  3079.       DefaultTextureTrigger: =
  3080.       {
  3081.         t_DefaultTextureTrigger = !
  3082.         GameCfg = "Doom 3"
  3083.       }
  3084.       DefaultTextureClip: =
  3085.       {
  3086.         t_DefaultTextureClip = !
  3087.         GameCfg = "Doom 3"
  3088.       }
  3089.       DefaultTextureOrigin: =
  3090.       {
  3091.         t_DefaultTextureOrigin = !
  3092.         GameCfg = "Doom 3"
  3093.       }
  3094.       DefaultTextureCaulk: =
  3095.       {
  3096.         t_DefaultTextureCaulk = !
  3097.         GameCfg = "Doom 3"
  3098.       }
  3099.       3DLight: =
  3100.       {
  3101.         Txt = "Game Light saturation"
  3102.         Typ = "EF1"
  3103.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  3104.       }
  3105.       BrushDecimalPlaces: = {
  3106.         Txt = "No. of Decimal Places for Brushes"
  3107.         Typ = "EF1"
  3108.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  3109.         Min = '1'
  3110.         Max = '40'
  3111.       }
  3112.       sep:        = {Typ="S" Txt = ""}
  3113.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  3114.       t_GameBuildPgms=!
  3115.     }
  3116.  
  3117.     GameHalfLife:form =
  3118.     {
  3119.       Style = "3"
  3120.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  3121.       Program: = {
  3122.         Typ = "C"     // combo box
  3123.         Txt = "Half-Life command-line"
  3124.         Items = "HL.EXE"
  3125.              $0D"HL.EXE -console -dev -zone 1024 +set sv_cheats 1"
  3126.         t_ProgramHint=!
  3127.       }
  3128.       Directory: =
  3129.       {
  3130.         Txt = "Directory of Half-Life"
  3131.         Typ = "ED"      // Edit Directory
  3132.         Hint = "Path to the game executable"
  3133.         CheckFile = "HL.EXE"
  3134.       }
  3135.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  3136.       {
  3137.         Typ = "+"
  3138.         Txt = "Installed Add-ons"
  3139.         Cap = "Add-ons..."
  3140.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  3141.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  3142.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  3143.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  3144.         cmd:macro = {Typ="M" Msg="GAM3"}    // switches to Half-Life
  3145.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  3146.       }
  3147.       Outp:tbbtn =
  3148.       {
  3149.         Typ = "+"
  3150.         Txt = "Paths and files to create"
  3151.         Cap = "Output directories..."
  3152.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  3153.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  3154.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  3155.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  3156.         cmd:macro = {Typ="M" Msg="GAM3"}    // switches to Half-Life
  3157.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  3158.       }
  3159.       sep: = {Typ="S" Txt = ""}
  3160.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  3161.       DefaultTexture: =
  3162.       {
  3163.         t_DefaultTexture = !
  3164.         GameCfg = "Half-Life"
  3165.       }
  3166.       DefaultTextureTrigger: =
  3167.       {
  3168.         t_DefaultTextureTrigger = !
  3169.         GameCfg = "Half-Life"
  3170.       }
  3171.       DefaultTextureClip: =
  3172.       {
  3173.         t_DefaultTextureClip = !
  3174.         GameCfg = "Half-Life"
  3175.       }
  3176.       DefaultTextureOrigin: =
  3177.       {
  3178.         t_DefaultTextureOrigin = !
  3179.         GameCfg = "Half-Life"
  3180.       }
  3181.       3DLight: =
  3182.       {
  3183.         Txt = "Game Light saturation"
  3184.         Typ = "EF1"
  3185.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  3186.       }
  3187.       BrushDecimalPlaces: = {
  3188.         Txt = "No. of Decimal Places for Brushes"
  3189.         Typ = "EF1"
  3190.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  3191.         Min = '1'
  3192.         Max = '40'
  3193.       }
  3194.       EnableTransparency: =
  3195.       {
  3196.         Txt = "In OpenGL window, enable transparency (slow!)"
  3197.         Typ = "X"
  3198.         Hint = "When checked, brush-entities that has their"
  3199.             $0D"'rendermode' and 'renderamt' set to transparency,"
  3200.             $0D"will be drawn transparent in the OpenGL window - "
  3201.             $0D"though NOT exactly drawn as in-game."
  3202.             $0D
  3203.             $0D"Notice! When enabled the OpenGL window may"
  3204.             $0D"be very slow to update itself, when changing"
  3205.             $0D"the scenery."
  3206.       }
  3207.       sep:        = {Typ="S" Txt = ""}
  3208.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  3209.       t_GameBuildPgms=!
  3210.     }
  3211.  
  3212.     GameHalfLife2:form =
  3213.     {
  3214.       Style = "3"
  3215.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  3216.       Program: = {
  3217.         Typ = "C"     // combo box
  3218.         Txt = "Half-Life2 command-line"
  3219.         t_ProgramHint=!
  3220.         Items =    "e:\spiele\steam\steam.exe -applaunch 220 -dev -console -window -width 800 -height 600"
  3221.                 $0D"e:\spiele\steam\steam.exe -applaunch 240 -dev -console -window -width 800 -height 600"
  3222.                 $0D"e:\spiele\steam\steam.exe -applaunch 320 -dev -console -window -width 800 -height 600"
  3223.       }
  3224.       SteamFSModule =
  3225.       {
  3226.         DefExt="dll"
  3227.         Txt = "Steam Filesystem Dll"
  3228.         Typ = "EP"     
  3229.         Hint = "chose FileSystem_Steam.dll from sourcesdk/bin directory"
  3230.       }
  3231.       SteamAppUser =
  3232.       {
  3233.         Txt = "Steam Account Name"
  3234.         Hint = "The Name you logon into steam"
  3235.       }
  3236.       SteamAppId =
  3237.       {
  3238.         Txt = "Steam App Id"
  3239.         Hint = "set to 211"
  3240.       }
  3241.       Directory: =
  3242.       {
  3243.         Txt = "Steam Directory"
  3244.         Typ = "ED"      // Edit Directory
  3245.         Hint = "Steam Install Directory"
  3246.         CheckFile = "steam.exe"
  3247.       }
  3248.       tmpQuArK: =
  3249.       {
  3250.         Txt = "Game Directory"
  3251.         Typ = "C"   // combo box    
  3252.         Hint = "relative to steam install directory, e.g. SteamApps/<insert your Steam Account Name here>/counter-strike source/cstrike"
  3253.         Items =    "SteamApps/<insert your Steam Account Name here>/half-life 2 deathmatch/hl2mp"
  3254.                 $0D"SteamApps/<insert your Steam Account Name here>/half-life 2/hl2"
  3255.                 $0D"SteamApps/<insert your Steam Account Name here>/counter-strike source/cstrike"
  3256.       }
  3257.       TextureWriteSubFormatA: = {
  3258.         Typ = "CL"
  3259.         Txt = "Format of exported alpha Textures"
  3260.         Values = "0"$0D"1"$0D"6"$0D"7"$0D"8"$0D"9"$0D"10"$0D
  3261.                  "11"$0D"12"$0D"13"$0D"14"$0D"15"$0D"16"$0D"17"$0D"18"$0D"19"$0D"20"$0D
  3262.                  "21"$0D"22"$0D"23"$0D"24"$0D"25"
  3263.         Items = "RGBA8888"
  3264.              $0D "ABGR8888"
  3265.              $0D "IA88"
  3266.              $0D "P8"
  3267.              $0D "A8"
  3268.              $0D "RGB888_BLUESCREEN"
  3269.              $0D "BGR888_BLUESCREEN"
  3270.              $0D "ARGB8888"
  3271.              $0D "BGRA8888"
  3272.              $0D "DXT1"
  3273.              $0D "DXT3"
  3274.              $0D "DXT5"
  3275.              $0D "BGRX8888"
  3276.              $0D "BGR565"
  3277.              $0D "BGRX5551"
  3278.              $0D "BGRA4444"
  3279.              $0D "DXT1_ONEBITALPHA"
  3280.              $0D "BGRA5551"
  3281.              $0D "UV88"
  3282.              $0D "UVWQ8888"
  3283.              $0D "RGBA16161616F"
  3284.              $0D "RGBA16161616"
  3285.              $0D "UVLX8888"
  3286.       }
  3287.  
  3288.       TextureWriteSubFormat: = {
  3289.         Typ = "CL"
  3290.         Txt = "Format of exported non alpha Textures"
  3291.         Values = "2"$0D"3"$0D"4"$0D"5"$0D"6"$0D"7"$0D"8"$0D"9"$0D"10"$0D
  3292.                  "13"$0D"14"$0D"15"$0D"16"$0D"17"$0D
  3293.                  "21"$0D"22"$0D"25"
  3294.         Items = "RGB888"
  3295.              $0D "BGR888"
  3296.              $0D "RGB565"
  3297.              $0D "I8"
  3298.              $0D "IA88"
  3299.              $0D "P8"
  3300.              $0D "A8"
  3301.              $0D "RGB888_BLUESCREEN"
  3302.              $0D "BGR888_BLUESCREEN"
  3303.              $0D "DXT1"
  3304.              $0D "DXT3"
  3305.              $0D "DXT5"
  3306.              $0D "BGRX8888"
  3307.              $0D "BGR565"
  3308.              $0D "BGRX5551"
  3309.              $0D "UV88"
  3310.              $0D "UVWQ8888"
  3311.              $0D "UVLX8888"
  3312.       }
  3313.       
  3314.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  3315.       {
  3316.         Typ = "+"
  3317.         Txt = "Installed Add-ons"
  3318.         Cap = "Add-ons..."
  3319.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  3320.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  3321.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  3322.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  3323.         cmd:macro = {Typ="M" Msg="GAMk"}    // switches to Half-Life2
  3324.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  3325.       }
  3326.       Outp:tbbtn =
  3327.       {
  3328.         Typ = "+"
  3329.         Txt = "Paths and files to create"
  3330.         Cap = "Output directories..."
  3331.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  3332.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  3333.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  3334.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  3335.         cmd:macro = {Typ="M" Msg="GAMk"}    // switches to Half-Life2
  3336.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  3337.       }
  3338.       sep: = {Typ="S" Txt = ""}
  3339.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  3340.       DefaultTexture: =
  3341.       {
  3342.         t_DefaultTexture = !
  3343.         GameCfg = "Half-Life2"
  3344.       }
  3345.       DefaultTextureTrigger: =
  3346.       {
  3347.         t_DefaultTextureTrigger = !
  3348.         GameCfg = "Half-Life2"
  3349.       }
  3350.       DefaultTextureClip: =
  3351.       {
  3352.         t_DefaultTextureClip = !
  3353.         GameCfg = "Half-Life2"
  3354.       }
  3355.       DefaultTextureOrigin: =
  3356.       {
  3357.         t_DefaultTextureOrigin = !
  3358.         GameCfg = "Half-Life2"
  3359.       }
  3360.       3DLight: =
  3361.       {
  3362.         Txt = "Game Light saturation"
  3363.         Typ = "EF1"
  3364.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  3365.       }
  3366.       BrushDecimalPlaces: = {
  3367.         Txt = "No. of Decimal Places for Brushes"
  3368.         Typ = "EF1"
  3369.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  3370.         Min = '1'
  3371.         Max = '40'
  3372.       }
  3373.       EnableTransparency: =
  3374.       {
  3375.         Txt = "In OpenGL window, enable transparency (slow!)"
  3376.         Typ = "X"
  3377.         Hint = "When checked, brush-entities that has their"
  3378.             $0D"'rendermode' and 'renderamt' set to transparency,"
  3379.             $0D"will be drawn transparent in the OpenGL window - "
  3380.             $0D"though NOT exactly drawn as in-game."
  3381.             $0D
  3382.             $0D"Notice! When enabled the OpenGL window may"
  3383.             $0D"be very slow to update itself, when changing"
  3384.             $0D"the scenery."
  3385.       }
  3386.       sep:        = {Typ="S" Txt = ""}
  3387.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  3388.       t_GameBuildPgms=!
  3389.     }
  3390.  
  3391.     GameHeretic2:form =
  3392.     {
  3393.       Style = "3"
  3394.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  3395.       Program: = {
  3396.         Typ = "C"     // combo box
  3397.         Txt = "Heretic II command-line"
  3398.         Items = "Heretic2.EXE"
  3399.         t_ProgramHint=!
  3400.       }
  3401.       Directory: =
  3402.       {
  3403.         Txt = "Directory of Heretic II"
  3404.         Typ = "ED"      // Edit Directory
  3405.         Hint = "Path to the game executable"
  3406.         CheckFile = "HERETIC2.EXE"
  3407.       }
  3408.       CD: =
  3409.       {
  3410.         Txt = "Heretic II CD-ROM drive"
  3411.         Typ = "ED"      // Edit Directory
  3412.         Hint = "If you installed Heretic II minimally, this is the drive of the CD-ROM."
  3413.         CheckFile = "INSTALL\DATA\BASE\PAK0.PAK"
  3414.       }
  3415.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  3416.       {
  3417.         Typ = "+"
  3418.         Txt = "Installed Add-ons"
  3419.         Cap = "Add-ons..."
  3420.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  3421.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  3422.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  3423.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  3424.         cmd:macro = {Typ="M" Msg="GAMB"}    // switches to Hr2
  3425.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  3426.       }
  3427.       Outp:tbbtn =
  3428.       {
  3429.         Typ = "+"
  3430.         Txt = "Paths and files to create"
  3431.         Cap = "Output directories..."
  3432.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  3433.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  3434.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  3435.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  3436.         cmd:macro = {Typ="M" Msg="GAMB"}    // switches to Hr2
  3437.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  3438.       }
  3439.       sep: = {Typ="S" Txt = ""}
  3440.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  3441.       DefaultTexture: =
  3442.       {
  3443.         t_DefaultTexture = !
  3444.         GameCfg = "Heretic II"
  3445.       }
  3446.       DefaultTextureTrigger: =
  3447.       {
  3448.         t_DefaultTextureTrigger = !
  3449.         GameCfg = "Heretic II"
  3450.       }
  3451.       DefaultTextureClip: =
  3452.       {
  3453.         t_DefaultTextureClip = !
  3454.         GameCfg = "Heretic II"
  3455.       }
  3456.       3DLight: =
  3457.       {
  3458.         Txt = "Game Light saturation"
  3459.         Typ = "EF1"
  3460.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  3461.       }
  3462.       BrushDecimalPlaces: = {
  3463.         Txt = "No. of Decimal Places for Brushes"
  3464.         Typ = "EF1"
  3465.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  3466.         Min = '1'
  3467.         Max = '40'
  3468.       }
  3469.       sep:        = {Typ="S" Txt = ""}
  3470.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  3471.       t_GameBuildPgms=!
  3472.     }
  3473.  
  3474.     GameHexenII:form =
  3475.     {
  3476.       Style = "3"
  3477.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  3478.       Program: = {
  3479.         Typ = "C"     // combo box
  3480.         Txt = "Hexen II command-line"
  3481.         Items = "H2.EXE"
  3482.              $0D"H2.EXE -listen 8"
  3483.              $0D"GLH2.EXE"
  3484.              $0D"GLH2.EXE -listen 8"
  3485.         t_ProgramHint=!
  3486.       }
  3487.       Directory: =
  3488.       {
  3489.         Txt = "Directory of Hexen II"
  3490.         Typ = "ED"      // Edit Directory
  3491.         Hint = "Path to the game executable"
  3492.         CheckFile = "H2.EXE"
  3493.       }
  3494.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  3495.       {
  3496.         Typ = "+"
  3497.         Txt = "Installed Add-ons"
  3498.         Cap = "Add-ons..."
  3499.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  3500.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  3501.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  3502.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  3503.         cmd:macro = {Typ="M" Msg="GAM2"}    // switches to Hexen II
  3504.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  3505.       }
  3506.       Outp:tbbtn =
  3507.       {
  3508.         Typ = "+"
  3509.         Txt = "Paths and files to create"
  3510.         Cap = "Output directories..."
  3511.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  3512.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  3513.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  3514.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  3515.         cmd:macro = {Typ="M" Msg="GAM2"}    // switches to Hexen II
  3516.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  3517.       }
  3518.       PlayerClass: = {
  3519.         Typ = "CL"
  3520.         Txt = "Player class"
  3521.         Values = "1"$0D"2"$0D"3"$0D"4"
  3522.         Items = "Paladin"
  3523.              $0D "Crusader"
  3524.              $0D "Necromancer"
  3525.              $0D "Assassin"
  3526.       }
  3527.       sep: = {Typ="S" Txt = ""}
  3528.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  3529.       DefaultTexture: =
  3530.       {
  3531.         t_DefaultTexture = !
  3532.         GameCfg = "Hexen II"
  3533.       }
  3534.       DefaultTextureTrigger: =
  3535.       {
  3536.         t_DefaultTextureTrigger = !
  3537.         GameCfg = "Hexen II"
  3538.       }
  3539.       DefaultTextureClip: =
  3540.       {
  3541.         t_DefaultTextureClip = !
  3542.         GameCfg = "Hexen II"
  3543.       }
  3544.       3DLight: =
  3545.       {
  3546.         Txt = "Game Light saturation"
  3547.         Typ = "EF1"
  3548.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  3549.       }
  3550.       BrushDecimalPlaces: = {
  3551.         Txt = "No. of Decimal Places for Brushes"
  3552.         Typ = "EF1"
  3553.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  3554.         Min = '1'
  3555.         Max = '40'
  3556.       }
  3557.       sep:        = {Typ="S" Txt = ""}
  3558.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  3559.       t_GameBuildPgms=!
  3560.     }
  3561.  
  3562.     GameJA:form =
  3563.     {
  3564.       Style = "3"
  3565.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  3566.       Program: = {
  3567.         Typ = "C"     // combo box
  3568.         Txt = "JA command-line"
  3569.         Items = "JASP.EXE +set sv_pure 0"
  3570.         t_ProgramHint=!
  3571.       }
  3572.       Directory: =
  3573.       {
  3574.         Txt = "Directory of Jedi Academy"
  3575.         Typ = "ED"      // Edit Directory
  3576.         Hint = "Path to the game executable"
  3577.         CheckFile = "JASP.EXE"
  3578.       }
  3579.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  3580.       {
  3581.         Typ = "+"
  3582.         Txt = "Installed Add-ons"
  3583.         Cap = "Add-ons..."
  3584.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  3585.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  3586.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  3587.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  3588.         cmd:macro = {Typ="M" Msg="GAMl"}    // switches to JA (cmd=GAM, game=l)
  3589.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  3590.       }
  3591.       Outp:tbbtn =
  3592.       {
  3593.         Typ = "+"
  3594.         Txt = "Paths and files to create"
  3595.         Cap = "Output directories..."
  3596.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  3597.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  3598.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  3599.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  3600.         cmd:macro = {Typ="M" Msg="GAMl"}    // switches to JA (cmd=GAM, game=l)
  3601.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  3602.       }
  3603.       sep: = {Typ="S" Txt = ""}
  3604.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  3605.       DefaultTexture: =
  3606.       {
  3607.         t_DefaultTexture = !
  3608.         GameCfg = "JA"
  3609.       }
  3610.       DefaultTextureTrigger: =
  3611.       {
  3612.         t_DefaultTextureTrigger = !
  3613.         GameCfg = "JA"
  3614.       }
  3615.       DefaultTextureClip: =
  3616.       {
  3617.         t_DefaultTextureClip = !
  3618.         GameCfg = "JA"
  3619.       }
  3620.       DefaultTextureOrigin: =
  3621.       {
  3622.         t_DefaultTextureOrigin = !
  3623.         GameCfg = "JA"
  3624.       }
  3625.       DefaultTextureCaulk: =
  3626.       {
  3627.         t_DefaultTextureCaulk = !
  3628.         GameCfg = "JA"
  3629.       }
  3630.       3DLight: =
  3631.       {
  3632.         Txt = "Game Light saturation"
  3633.         Typ = "EF1"
  3634.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  3635.       }
  3636.       BrushDecimalPlaces: = {
  3637.         Txt = "No. of Decimal Places for Brushes"
  3638.         Typ = "EF1"
  3639.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  3640.         Min = '1'
  3641.         Max = '40'
  3642.       }
  3643.       sep:        = {Typ="S" Txt = ""}
  3644.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  3645.       t_GameBuildPgms=!
  3646.     }
  3647.  
  3648.     GameJK2:form =
  3649.     {
  3650.       Style = "3"
  3651.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  3652.       Program: = {
  3653.         Typ = "C"     // combo box
  3654.         Txt = "JK2 command-line"
  3655.         Items = "JK2MP.EXE +set sv_pure 0"
  3656.         t_ProgramHint=!
  3657.       }
  3658.       Directory: =
  3659.       {
  3660.         Txt = "Directory of Jedi Knight 2"
  3661.         Typ = "ED"      // Edit Directory
  3662.         Hint = "Path to the game executable"
  3663.         CheckFile = "JK2MP.EXE"
  3664.       }
  3665.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  3666.       {
  3667.         Typ = "+"
  3668.         Txt = "Installed Add-ons"
  3669.         Cap = "Add-ons..."
  3670.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  3671.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  3672.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  3673.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  3674.         cmd:macro = {Typ="M" Msg="GAMf"}    // switches to JK2 (cmd=GAM, game=f)
  3675.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  3676.       }
  3677.       Outp:tbbtn =
  3678.       {
  3679.         Typ = "+"
  3680.         Txt = "Paths and files to create"
  3681.         Cap = "Output directories..."
  3682.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  3683.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  3684.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  3685.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  3686.         cmd:macro = {Typ="M" Msg="GAMf"}    // switches to JK2 (cmd=GAM, game=f)
  3687.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  3688.       }
  3689.       sep: = {Typ="S" Txt = ""}
  3690.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  3691.       DefaultTexture: =
  3692.       {
  3693.         t_DefaultTexture = !
  3694.         GameCfg = "JK2"
  3695.       }
  3696.       DefaultTextureTrigger: =
  3697.       {
  3698.         t_DefaultTextureTrigger = !
  3699.         GameCfg = "JK2"
  3700.       }
  3701.       DefaultTextureClip: =
  3702.       {
  3703.         t_DefaultTextureClip = !
  3704.         GameCfg = "JK2"
  3705.       }
  3706.       DefaultTextureOrigin: =
  3707.       {
  3708.         t_DefaultTextureOrigin = !
  3709.         GameCfg = "JK2"
  3710.       }
  3711.       DefaultTextureCaulk: =
  3712.       {
  3713.         t_DefaultTextureCaulk = !
  3714.         GameCfg = "JK2"
  3715.       }
  3716.       3DLight: =
  3717.       {
  3718.         Txt = "Game Light saturation"
  3719.         Typ = "EF1"
  3720.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  3721.       }
  3722.       BrushDecimalPlaces: = {
  3723.         Txt = "No. of Decimal Places for Brushes"
  3724.         Typ = "EF1"
  3725.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  3726.         Min = '1'
  3727.         Max = '40'
  3728.       }
  3729.       sep:        = {Typ="S" Txt = ""}
  3730.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  3731.       t_GameBuildPgms=!
  3732.     }
  3733.  
  3734.     GameKingPin:form =
  3735.     {
  3736.       Style = "3"
  3737.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  3738.       Program: =
  3739.       {
  3740.         Typ = "C"
  3741.         Txt = "KingPin command-line"
  3742.         Items = "KingPin.EXE"
  3743.              $0D"KingPin.EXE +set developer 1"
  3744.         t_ProgramHint=!
  3745.       }
  3746.       Directory: =
  3747.       {
  3748.         Txt = "Directory of KingPin"
  3749.         Typ = "ED"
  3750.         Hint = "Path to the game executable"
  3751.         CheckFile = "kingpin.EXE"
  3752.       }
  3753.       AddOns:tbbtn =
  3754.       {
  3755.         Typ = "+"
  3756.         Txt = "Installed Add-ons"
  3757.         Cap = "Add-ons..."
  3758.         Icon = $666008881111111866604441999799916660CCC11011111166602444045555
  3759.          $4866602C2AA478887866602C4A24787F78666022AC48778878666022CC4788887866
  3760.          $6000407787877866608777777777784448444844487F785C77CF77CC4877785CC7C7
  3761.          $77CC488880055555555548870666608888888800666666666666666666
  3762.         cmd:macro = { Typ = "M" Msg = "GAMD" } // switches to KingPin (cmd=GAM, game=D)
  3763.         cmd:macro = { Typ = "M" Msg = "ADDO" }
  3764.       }
  3765.       Outp:tbbtn =
  3766.       {
  3767.         Typ = "+"
  3768.         Txt = "Paths and files to create"
  3769.         Cap = "Output directories..."
  3770.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0FA
  3771.          $0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AAA220FBB003
  3772.          $22022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A0022002A200666002A
  3773.          $AAA20006666666002A200666666666660006666666
  3774.         cmd:macro = { Typ = "M" Msg = "GAMD" } // switches to KingPin (cmd=GAM, game=D)
  3775.         cmd:macro = { Typ = "M" Msg = "OUTP" }
  3776.       }
  3777.       sep: = {Typ="S" Txt = ""}
  3778.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  3779.       DefaultTexture: =
  3780.       {
  3781.         t_DefaultTexture = !
  3782.         GameCfg = "KingPin"
  3783.       }
  3784.       DefaultTextureTrigger: =
  3785.       {
  3786.         t_DefaultTextureTrigger = !
  3787.         GameCfg = "KingPin"
  3788.       }
  3789.       DefaultTextureClip: =
  3790.       {
  3791.         t_DefaultTextureClip = !
  3792.         GameCfg = "KingPin"
  3793.       }
  3794.       DefaultTextureOrigin: =
  3795.       {
  3796.         t_DefaultTextureOrigin = !
  3797.         GameCfg = "KingPin"
  3798.       }
  3799.       3DLight: =
  3800.       {
  3801.         Txt = "Game Light saturation"
  3802.         Typ = "EF1"
  3803.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  3804.       }
  3805.       BrushDecimalPlaces: = {
  3806.         Txt = "No. of Decimal Places for Brushes"
  3807.         Typ = "EF1"
  3808.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  3809.         Min = '1'
  3810.         Max = '40'
  3811.       }
  3812.       sep:        = {Typ="S" Txt = ""}
  3813.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  3814.       walTrick: = {
  3815.         Typ = "X"
  3816.         Txt = "This version of qbsp3 wants"
  3817.         Cap = ".WAL texture files"
  3818.         Hint = "check this to have QuArK write both .WAL and .TGA textures (kpBSP can't read .TGA textures)"
  3819.       }
  3820.       t_GameBuildPgms=!
  3821.     }
  3822.  
  3823.     GameMOHAA:form =
  3824.     {
  3825.       Style = "3"
  3826.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  3827.       Program: = {
  3828.         Typ = "C"     // combo box
  3829.         Txt = "MOHAA command-line"
  3830.         Items = "MOHAA.EXE +set sv_pure 0"
  3831.         t_ProgramHint=!
  3832.       }
  3833.       Directory: =
  3834.       {
  3835.         Txt = "Directory of MOHAA"
  3836.         Typ = "ED"      // Edit Directory
  3837.         Hint = "Path to the game executable"
  3838.         CheckFile = "MOHAA.EXE"
  3839.       }
  3840.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  3841.       {
  3842.         Typ = "+"
  3843.         Txt = "Installed Add-ons"
  3844.         Cap = "Add-ons..."
  3845.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  3846.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  3847.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  3848.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  3849.         cmd:macro = {Typ="M" Msg="GAMe"}    // switches to MOHAA (cmd=GAM, game=e)
  3850.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  3851.       }
  3852.       Outp:tbbtn =
  3853.       {
  3854.         Typ = "+"
  3855.         Txt = "Paths and files to create"
  3856.         Cap = "Output directories..."
  3857.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  3858.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  3859.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  3860.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  3861.         cmd:macro = {Typ="M" Msg="GAMe"}    // switches to MOHAA (cmd=GAM, game=e)
  3862.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  3863.       }
  3864.       sep: = {Typ="S" Txt = ""}
  3865.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  3866.       DefaultTexture: =
  3867.       {
  3868.         t_DefaultTexture = !
  3869.         GameCfg = "MOHAA"
  3870.       }
  3871.       DefaultTextureTrigger: =
  3872.       {
  3873.         t_DefaultTextureTrigger = !
  3874.         GameCfg = "MOHAA"
  3875.       }
  3876.       DefaultTextureClip: =
  3877.       {
  3878.         t_DefaultTextureClip = !
  3879.         GameCfg = "MOHAA"
  3880.       }
  3881.       DefaultTextureOrigin: =
  3882.       {
  3883.         t_DefaultTextureOrigin = !
  3884.         GameCfg = "MOHAA"
  3885.       }
  3886.       DefaultTextureCaulk: =
  3887.       {
  3888.         t_DefaultTextureCaulk = !
  3889.         GameCfg = "MOHAA"
  3890.       }
  3891.       3DLight: =
  3892.       {
  3893.         Txt = "Game Light saturation"
  3894.         Typ = "EF1"
  3895.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  3896.       }
  3897.       BrushDecimalPlaces: = {
  3898.         Txt = "No. of Decimal Places for Brushes"
  3899.         Typ = "EF1"
  3900.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  3901.         Min = '1'
  3902.         Max = '40'
  3903.       }
  3904.       sep:        = {Typ="S" Txt = ""}
  3905.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  3906.       t_GameBuildPgms=!
  3907.     }
  3908.  
  3909.     GameQuake1:form =
  3910.     {
  3911.       Style = "3"
  3912.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  3913.       Program: = {
  3914.         Typ = "C"     // combo box
  3915.         Txt = "Quake command-line"
  3916.         Items = "Quake.EXE"
  3917.              $0D"Quake.EXE -listen 4"
  3918.              $0D"GLQuake.EXE"
  3919.              $0D"GLQuake.EXE -listen 4"
  3920.              $0D"WinQuake.EXE"
  3921.              $0D"WinQuake.EXE -listen 4"
  3922.              $0D"WinDed.EXE"
  3923.         t_ProgramHint=!
  3924.       }
  3925.       Directory: =
  3926.       {
  3927.         Txt = "Directory of Quake 1"
  3928.         Typ = "ED"      // Edit Directory
  3929.         Hint = "Path to the game executable"
  3930.         CheckFile = "QUAKE.EXE"
  3931.       }
  3932.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  3933.       {
  3934.         Typ = "+"
  3935.         Txt = "Installed Add-ons"
  3936.         Cap = "Add-ons..."
  3937.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  3938.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  3939.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  3940.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  3941.         cmd:macro = {Typ="M" Msg="GAM1"}    // switches to Quake 1
  3942.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  3943.       }
  3944.       Outp:tbbtn =
  3945.       {
  3946.         Typ = "+"
  3947.         Txt = "Paths and files to create"
  3948.         Cap = "Output directories..."
  3949.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  3950.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  3951.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  3952.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  3953.         cmd:macro = {Typ="M" Msg="GAM1"}    // switches to Quake 1
  3954.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  3955.       }
  3956.       sep: = {Typ="S" Txt = ""}
  3957.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  3958.       DefaultTexture: =
  3959.       {
  3960.         t_DefaultTexture = !
  3961.         GameCfg = "Quake 1"
  3962.       }
  3963.       DefaultTextureTrigger: =
  3964.       {
  3965.         t_DefaultTextureTrigger = !
  3966.         GameCfg = "Quake 1"
  3967.       }
  3968.       DefaultTextureClip: =
  3969.       {
  3970.         t_DefaultTextureClip = !
  3971.         GameCfg = "Quake 1"
  3972.       }
  3973.       3DLight: =
  3974.       {
  3975.         Txt = "Game Light saturation"
  3976.         Typ = "EF1"
  3977.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  3978.       }
  3979.       BrushDecimalPlaces: = {
  3980.         Txt = "No. of Decimal Places for Brushes"
  3981.         Typ = "EF1"
  3982.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  3983.         Min = '1'
  3984.         Max = '40'
  3985.       }
  3986.       sep:        = {Typ="S" Txt = ""}
  3987.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  3988.       t_GameBuildPgms=!
  3989.     }
  3990.  
  3991.     GameQuake2:form =
  3992.     {
  3993.       Style = "3"
  3994.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  3995.       Program: = {
  3996.         Typ = "C"     // combo box
  3997.         Txt = "Quake 2 command-line"
  3998.         Items = "Quake2.EXE"
  3999.         t_ProgramHint=!
  4000.       }
  4001.       Directory: =
  4002.       {
  4003.         Txt = "Directory of Quake 2"
  4004.         Typ = "ED"      // Edit Directory
  4005.         Hint = "Path to the game executable"
  4006.         CheckFile = "QUAKE2.EXE"
  4007.       }
  4008.       CD: =
  4009.       {
  4010.         Txt = "Quake 2 CD-ROM drive"
  4011.         Typ = "ED"      // Edit Directory
  4012.         Hint = "If you installed Quake 2 minimally, this is the drive of the CD-ROM."
  4013.         CheckFile = "INSTALL\DATA\BASEQ2\PAK0.PAK"
  4014.       }
  4015.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  4016.       {
  4017.         Typ = "+"
  4018.         Txt = "Installed Add-ons"
  4019.         Cap = "Add-ons..."
  4020.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  4021.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  4022.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  4023.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  4024.         cmd:macro = {Typ="M" Msg="GAMA"}    // switches to Quake 2
  4025.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  4026.       }
  4027.       Outp:tbbtn =
  4028.       {
  4029.         Typ = "+"
  4030.         Txt = "Paths and files to create"
  4031.         Cap = "Output directories..."
  4032.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  4033.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  4034.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  4035.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  4036.         cmd:macro = {Typ="M" Msg="GAMA"}    // switches to Quake 2
  4037.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  4038.       }
  4039.       sep: = {Typ="S" Txt = ""}
  4040.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  4041.       DefaultTexture: =
  4042.       {
  4043.         t_DefaultTexture = !
  4044.         GameCfg = "Quake 2"
  4045.       }
  4046.       DefaultTextureTrigger: =
  4047.       {
  4048.         t_DefaultTextureTrigger = !
  4049.         GameCfg = "Quake 2"
  4050.       }
  4051.       DefaultTextureClip: =
  4052.       {
  4053.         t_DefaultTextureClip = !
  4054.         GameCfg = "Quake 2"
  4055.       }
  4056.       DefaultTextureOrigin: =
  4057.       {
  4058.         t_DefaultTextureOrigin = !
  4059.         GameCfg = "Quake 2"
  4060.       }
  4061.       3DLight: =
  4062.       {
  4063.         Txt = "Game Light saturation"
  4064.         Typ = "EF1"
  4065.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  4066.       }
  4067.       BrushDecimalPlaces: = {
  4068.         Txt = "No. of Decimal Places for Brushes"
  4069.         Typ = "EF1"
  4070.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  4071.         Min = '1'
  4072.         Max = '40'
  4073.       }
  4074.       sep:        = {Typ="S" Txt = ""}
  4075.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  4076.       t_GameBuildPgms=!
  4077.     }
  4078.  
  4079.     GameQuake3:form =
  4080.     {
  4081.       Style = "3"
  4082.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  4083.       Program: = {
  4084.         Typ = "C"     // combo box
  4085.         Txt = "Quake 3 command-line"
  4086.         Items = "Quake3.EXE +set sv_pure 0"
  4087.         t_ProgramHint=!
  4088.       }
  4089.       Directory: =
  4090.       {
  4091.         Txt = "Directory of Quake 3"
  4092.         Typ = "ED"      // Edit Directory
  4093.         Hint = "Path to the game executable"
  4094.         CheckFile = "QUAKE3.EXE"
  4095.       }
  4096.       CD: =
  4097.       {
  4098.         Txt = "Quake 3 CD-ROM drive"
  4099.         Typ = "ED"      // Edit Directory
  4100.         Hint = "If you installed Quake 3 minimally, this is the drive of the CD-ROM."
  4101.         CheckFile = "Quake3\BASEQ3\PAK0.PK3"
  4102.       }
  4103.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  4104.       {
  4105.         Typ = "+"
  4106.         Txt = "Installed Add-ons"
  4107.         Cap = "Add-ons..."
  4108.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  4109.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  4110.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  4111.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  4112.         cmd:macro = {Typ="M" Msg="GAMa"}    // switches to Quake 3 (cmd=GAM, game=a)
  4113.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  4114.       }
  4115.       Outp:tbbtn =
  4116.       {
  4117.         Typ = "+"
  4118.         Txt = "Paths and files to create"
  4119.         Cap = "Output directories..."
  4120.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  4121.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  4122.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  4123.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  4124.         cmd:macro = {Typ="M" Msg="GAMa"}    // switches to Quake 3 (cmd=GAM, game=a)
  4125.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  4126.       }
  4127.       sep: = {Typ="S" Txt = ""}
  4128.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  4129.       DefaultTexture: =
  4130.       {
  4131.         t_DefaultTexture = !
  4132.         GameCfg = "Quake 3"
  4133.       }
  4134.       DefaultTextureTrigger: =
  4135.       {
  4136.         t_DefaultTextureTrigger = !
  4137.         GameCfg = "Quake 3"
  4138.       }
  4139.       DefaultTextureClip: =
  4140.       {
  4141.         t_DefaultTextureClip = !
  4142.         GameCfg = "Quake 3"
  4143.       }
  4144.       DefaultTextureOrigin: =
  4145.       {
  4146.         t_DefaultTextureOrigin = !
  4147.         GameCfg = "Quake 3"
  4148.       }
  4149.       DefaultTextureCaulk: =
  4150.       {
  4151.         t_DefaultTextureCaulk = !
  4152.         GameCfg = "Quake 3"
  4153.       }
  4154.       3DLight: =
  4155.       {
  4156.         Txt = "Game Light saturation"
  4157.         Typ = "EF1"
  4158.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  4159.       }
  4160.       BrushDecimalPlaces: = {
  4161.         Txt = "No. of Decimal Places for Brushes"
  4162.         Typ = "EF1"
  4163.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  4164.         Min = '1'
  4165.         Max = '40'
  4166.       }
  4167.       sep:        = {Typ="S" Txt = ""}
  4168.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  4169.       t_GameBuildPgms=!
  4170.     }
  4171.  
  4172.     GameRTCW:form =
  4173.     {
  4174.       Style = "3"
  4175.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  4176.       Program: = {
  4177.         Typ = "C"     // combo box
  4178.         Txt = "RTCW command-line"
  4179.         Items = "WOLFSP.EXE +set sv_pure 0"
  4180.         t_ProgramHint=!
  4181.       }
  4182.       Directory: =
  4183.       {
  4184.         Txt = "Directory of RTCW"
  4185.         Typ = "ED"      // Edit Directory
  4186.         Hint = "Path to the game executable"
  4187.         CheckFile = "WOLFSP.EXE"
  4188.       }
  4189.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  4190.       {
  4191.         Typ = "+"
  4192.         Txt = "Installed Add-ons"
  4193.         Cap = "Add-ons..."
  4194.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  4195.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  4196.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  4197.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  4198.         cmd:macro = {Typ="M" Msg="GAMd"}    // switches to RTCW (cmd=GAM, game=d)
  4199.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  4200.       }
  4201.       Outp:tbbtn =
  4202.       {
  4203.         Typ = "+"
  4204.         Txt = "Paths and files to create"
  4205.         Cap = "Output directories..."
  4206.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  4207.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  4208.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  4209.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  4210.         cmd:macro = {Typ="M" Msg="GAMd"}    // switches to RTCW (cmd=GAM, game=d)
  4211.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  4212.       }
  4213.       sep: = {Typ="S" Txt = ""}
  4214.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  4215.       DefaultTexture: =
  4216.       {
  4217.         t_DefaultTexture = !
  4218.         GameCfg = "RTCW"
  4219.       }
  4220.       DefaultTextureTrigger: =
  4221.       {
  4222.         t_DefaultTextureTrigger = !
  4223.         GameCfg = "RTCW"
  4224.       }
  4225.       DefaultTextureClip: =
  4226.       {
  4227.         t_DefaultTextureClip = !
  4228.         GameCfg = "RTCW"
  4229.       }
  4230.       DefaultTextureOrigin: =
  4231.       {
  4232.         t_DefaultTextureOrigin = !
  4233.         GameCfg = "RTCW"
  4234.       }
  4235.       DefaultTextureCaulk: =
  4236.       {
  4237.         t_DefaultTextureCaulk = !
  4238.         GameCfg = "RTCW"
  4239.       }
  4240.       3DLight: =
  4241.       {
  4242.         Txt = "Game Light saturation"
  4243.         Typ = "EF1"
  4244.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  4245.       }
  4246.       BrushDecimalPlaces: = {
  4247.         Txt = "No. of Decimal Places for Brushes"
  4248.         Typ = "EF1"
  4249.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  4250.         Min = '1'
  4251.         Max = '40'
  4252.       }
  4253.       sep:        = {Typ="S" Txt = ""}
  4254.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  4255.       t_GameBuildPgms=!
  4256.     }
  4257.  
  4258.     GameSin:form =
  4259.     {
  4260.       Style = "3"
  4261.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  4262.       Program: = {
  4263.         Typ = "C"     // combo box
  4264.         Txt = "Sin command-line"
  4265.         Items = "Sin.EXE"
  4266.         t_ProgramHint=!
  4267.       }
  4268.       Directory: =
  4269.       {
  4270.         Txt = "Directory of Sin"
  4271.         Typ = "ED"      // Edit Directory
  4272.         Hint = "Path to the game executable"
  4273.         CheckFile = "SIN.EXE"
  4274.       }
  4275.       CD: =
  4276.       {
  4277.         Txt = "Sin CD-ROM drive"
  4278.         Typ = "ED"      // Edit Directory
  4279.         Hint = "If you installed Sin minimally, this is the drive of the CD-ROM."
  4280.         CheckFile = "SETUP\DATA\BASE\PAK0.SIN"
  4281.       }
  4282.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  4283.       {
  4284.         Typ = "+"
  4285.         Txt = "Installed Add-ons"
  4286.         Cap = "Add-ons..."
  4287.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  4288.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  4289.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  4290.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  4291.         cmd:macro = {Typ="M" Msg="GAMC"}    // switches to Sin
  4292.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  4293.       }
  4294.       Outp:tbbtn =
  4295.       {
  4296.         Typ = "+"
  4297.         Txt = "Paths and files to create"
  4298.         Cap = "Output directories..."
  4299.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  4300.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  4301.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  4302.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  4303.         cmd:macro = {Typ="M" Msg="GAMC"}    // switches to Sin
  4304.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  4305.       }
  4306.       sep: = {Typ="S" Txt = ""}
  4307.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  4308.       DefaultTexture: =
  4309.       {
  4310.         t_DefaultTexture = !
  4311.         GameCfg = "Sin"
  4312.       }
  4313.       DefaultTextureTrigger: =
  4314.       {
  4315.         t_DefaultTextureTrigger = !
  4316.         GameCfg = "Sin"
  4317.       }
  4318.       DefaultTextureClip: =
  4319.       {
  4320.         t_DefaultTextureClip = !
  4321.         GameCfg = "Sin"
  4322.       }
  4323.       3DLight: =
  4324.       {
  4325.         Txt = "Game Light saturation"
  4326.         Typ = "EF1"
  4327.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  4328.       }
  4329.       BrushDecimalPlaces: = {
  4330.         Txt = "No. of Decimal Places for Brushes"
  4331.         Typ = "EF1"
  4332.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  4333.         Min = '1'
  4334.         Max = '40'
  4335.       }
  4336.       sep:        = {Typ="S" Txt = ""}
  4337.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  4338.       t_GameBuildPgms=!
  4339.     }
  4340.  
  4341.     GameSOF:form =
  4342.     {
  4343.       Style = "3"
  4344.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  4345.       Program: =
  4346.       {
  4347.         Typ = "C"
  4348.         Txt = "SOF command-line"
  4349.         Items = "SOF.EXE"
  4350.              $0D"SOF.EXE +set console 1"
  4351.         t_ProgramHint=!
  4352.       }
  4353.       Directory: =
  4354.       {
  4355.         Txt = "Directory of SOF"
  4356.         Typ = "ED"
  4357.         Hint = "Path to the game executable"
  4358.         CheckFile = "sof.EXE"
  4359.       }
  4360.       AddOns:tbbtn =
  4361.       {
  4362.         Typ = "+"
  4363.         Txt = "Installed Add-ons"
  4364.         Cap = "Add-ons..."
  4365.         Icon = $666008881111111866604441999799916660CCC11011111166602444045555
  4366.          $4866602C2AA478887866602C4A24787F78666022AC48778878666022CC4788887866
  4367.          $6000407787877866608777777777784448444844487F785C77CF77CC4877785CC7C7
  4368.          $77CC488880055555555548870666608888888800666666666666666666
  4369.         cmd:macro = { Typ = "M" Msg = "GAME" } // switches to SOF  (cmd=GAM, game=E)
  4370.         cmd:macro = { Typ = "M" Msg = "ADDO" }
  4371.       }
  4372.       Outp:tbbtn =
  4373.       {
  4374.         Typ = "+"
  4375.         Txt = "Paths and files to create"
  4376.         Cap = "Output directories..."
  4377.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0FA
  4378.          $0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AAA220FBB003
  4379.          $22022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A0022002A200666002A
  4380.          $AAA20006666666002A200666666666660006666666
  4381.         cmd:macro = { Typ = "M" Msg = "GAME" } // switches to SOF (cmd=GAM, game=E)
  4382.         cmd:macro = { Typ = "M" Msg = "OUTP" }
  4383.       }
  4384.       sep: = {Typ="S" Txt = ""}
  4385.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  4386.       DefaultTexture: =
  4387.       {
  4388.         t_DefaultTexture = !
  4389.         GameCfg = "SOF"
  4390.       }
  4391.       DefaultTextureTrigger: =
  4392.       {
  4393.         t_DefaultTextureTrigger = !
  4394.         GameCfg = "SOF"
  4395.       }
  4396.       DefaultTextureClip: =
  4397.       {
  4398.         t_DefaultTextureClip = !
  4399.         GameCfg = "SOF"
  4400.       }
  4401.       DefaultTextureOrigin: =
  4402.       {
  4403.         t_DefaultTextureOrigin = !
  4404.         GameCfg = "SOF"
  4405.       }
  4406.       3DLight: =
  4407.       {
  4408.         Txt = "Game Light saturation"
  4409.         Typ = "EF1"
  4410.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  4411.       }
  4412.       BrushDecimalPlaces: = {
  4413.         Txt = "No. of Decimal Places for Brushes"
  4414.         Typ = "EF1"
  4415.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  4416.         Min = '1'
  4417.         Max = '40'
  4418.       }
  4419.       sep:        = {Typ="S" Txt = ""}
  4420.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  4421.       walTrick: = { //FIXME ! is this needed ?
  4422.         Typ = "X"
  4423.         Txt = "This version of qbsp wants"
  4424.         Cap = ".WAL texture files"
  4425.         Hint = "check this to have QuArK write both .WAL and .TGA textures (kpBSP can't read .TGA textures)"
  4426.       }
  4427.       t_GameBuildPgms=!
  4428.     }
  4429.  
  4430.     GameSoF2:form =
  4431.     {
  4432.       Style = "3"
  4433.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  4434.       Program: = {
  4435.         Typ = "C"     // combo box
  4436.         Txt = "SoF2 command-line"
  4437.         Items = "SoF2MP.EXE +set sv_pure 0"
  4438.         t_ProgramHint=!
  4439.       }
  4440.       Directory: =
  4441.       {
  4442.         Txt = "Directory of Soldier of Fortune 2"
  4443.         Typ = "ED"      // Edit Directory
  4444.         Hint = "Path to the game executable"
  4445.         CheckFile = "SoF2MP.EXE"
  4446.       }
  4447.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  4448.       {
  4449.         Typ = "+"
  4450.         Txt = "Installed Add-ons"
  4451.         Cap = "Add-ons..."
  4452.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  4453.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  4454.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  4455.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  4456.         cmd:macro = {Typ="M" Msg="GAMf"}    // switches to SoF2 (cmd=GAM, game=f)
  4457.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  4458.       }
  4459.       Outp:tbbtn =
  4460.       {
  4461.         Typ = "+"
  4462.         Txt = "Paths and files to create"
  4463.         Cap = "Output directories..."
  4464.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  4465.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  4466.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  4467.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  4468.         cmd:macro = {Typ="M" Msg="GAMf"}    // switches to SoF2 (cmd=GAM, game=f)
  4469.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  4470.       }
  4471.       sep: = {Typ="S" Txt = ""}
  4472.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  4473.       DefaultTexture: =
  4474.       {
  4475.         t_DefaultTexture = !
  4476.         GameCfg = "SoF2"
  4477.       }
  4478.       DefaultTextureTrigger: =
  4479.       {
  4480.         t_DefaultTextureTrigger = !
  4481.         GameCfg = "SoF2"
  4482.       }
  4483.       DefaultTextureClip: =
  4484.       {
  4485.         t_DefaultTextureClip = !
  4486.         GameCfg = "SoF2"
  4487.       }
  4488.       DefaultTextureOrigin: =
  4489.       {
  4490.         t_DefaultTextureOrigin = !
  4491.         GameCfg = "SoF2"
  4492.       }
  4493.       DefaultTextureCaulk: =
  4494.       {
  4495.         t_DefaultTextureCaulk = !
  4496.         GameCfg = "SoF2"
  4497.       }
  4498.       3DLight: =
  4499.       {
  4500.         Txt = "Game Light saturation"
  4501.         Typ = "EF1"
  4502.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  4503.       }
  4504.       BrushDecimalPlaces: = {
  4505.         Txt = "No. of Decimal Places for Brushes"
  4506.         Typ = "EF1"
  4507.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  4508.         Min = '1'
  4509.         Max = '40'
  4510.       }
  4511.       sep:        = {Typ="S" Txt = ""}
  4512.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  4513.       t_GameBuildPgms=!
  4514.     }
  4515.  
  4516.     GameSTVEF:form =
  4517.     {
  4518.       Style = "3"
  4519.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  4520.       Program: = {
  4521.         Typ = "C"     // combo box
  4522.         Txt = "StarTrek Voyager Elite Force command-line"
  4523.         Items = "STVoy.EXE +set sv_pure 0"
  4524.              $0D"STVoyHM.EXE +set sv_pure 0"
  4525.         t_ProgramHint=!
  4526.       }
  4527.       Directory: =
  4528.       {
  4529.         Txt = "Directory of StarTrek Voyager Elite Force"
  4530.         Typ = "ED"      // Edit Directory
  4531.         Hint = "Path to the game executable"
  4532.         CheckFile = "STVOY.EXE"
  4533.       }
  4534.       CD: =
  4535.       {
  4536.         Txt = "StarTrek Voyager Elite Force CD-ROM drive"
  4537.         Typ = "ED"      // Edit Directory
  4538.         Hint = "If you installed StarTrek minimally, this is the drive of the CD-ROM."
  4539.         CheckFile = "SETUP\BASEEF\PAK0.PK3"
  4540.       }
  4541.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  4542.       {
  4543.         Typ = "+"
  4544.         Txt = "Installed Add-ons"
  4545.         Cap = "Add-ons..."
  4546.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  4547.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  4548.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  4549.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  4550.         cmd:macro = {Typ="M" Msg="GAMb"}    // switches to StarTrek (cmd=GAM, game=b)
  4551.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  4552.       }
  4553.       Outp:tbbtn =
  4554.       {
  4555.         Typ = "+"
  4556.         Txt = "Paths and files to create"
  4557.         Cap = "Output directories..."
  4558.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  4559.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  4560.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  4561.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  4562.         cmd:macro = {Typ="M" Msg="GAMb"}    // switches to StarTrek (cmd=GAM, game=b)
  4563.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  4564.       }
  4565.       sep: = {Typ="S" Txt = ""}
  4566.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  4567.       DefaultTexture: =
  4568.       {
  4569.         t_DefaultTexture = !
  4570.         GameCfg = "STVEF"
  4571.       }
  4572.       DefaultTextureTrigger: =
  4573.       {
  4574.         t_DefaultTextureTrigger = !
  4575.         GameCfg = "STVEF"
  4576.       }
  4577.       DefaultTextureClip: =
  4578.       {
  4579.         t_DefaultTextureClip = !
  4580.         GameCfg = "STVEF"
  4581.       }
  4582.       DefaultTextureOrigin: =
  4583.       {
  4584.         t_DefaultTextureOrigin = !
  4585.         GameCfg = "STVEF"
  4586.       }
  4587.       DefaultTextureCaulk: =
  4588.       {
  4589.         t_DefaultTextureCaulk = !
  4590.         GameCfg = "STVEF"
  4591.       }
  4592.       3DLight: =
  4593.       {
  4594.         Txt = "Game Light saturation"
  4595.         Typ = "EF1"
  4596.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  4597.       }
  4598.       BrushDecimalPlaces: = {
  4599.         Txt = "No. of Decimal Places for Brushes"
  4600.         Typ = "EF1"
  4601.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  4602.         Min = '1'
  4603.         Max = '40'
  4604.       }
  4605.       sep:        = {Typ="S" Txt = ""}
  4606.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  4607.       t_GameBuildPgms=!
  4608.     }
  4609.  
  4610.     GameSylphis:form =
  4611.     {
  4612.       Style = "3"
  4613.       sep: =
  4614.       {
  4615.         Typ = "S"
  4616.         Txt = "---- Game Settings ----"
  4617.       }
  4618.       Program: =
  4619.       {
  4620.         Typ = "C"
  4621.         Txt = "Sylphis command line"
  4622.         Items = "sylphis.exe"
  4623.     t_ProgramHint=!
  4624.       }
  4625.       ExtraCmdLine: =
  4626.       {
  4627.         Typ = "C"
  4628.         Txt = "Sylphis extra command line"
  4629.         Items = " -gamedir %s"
  4630.       }
  4631.       Directory: =
  4632.       {
  4633.         Txt = "Directory of Sylphis"
  4634.         Typ = "ED"
  4635.         Hint = "Path to the game executable"
  4636.         CheckFile = "sylphis.exe"
  4637.       }
  4638.       ShadersPath: =
  4639.       {
  4640.         Txt = "Shader directory"
  4641.         Typ = "ED"
  4642.       }
  4643.       AddOns:tbbtn =
  4644.       {
  4645.         Typ = "+"
  4646.         Txt = "Installed Add-ons"
  4647.         Cap = "Add-ons..."
  4648.         Icon = $666008881111111866604441999799916660CCC11011111166602444045555
  4649.          $4866602C2AA478887866602C4A24787F78666022AC48778878666022CC4788887866
  4650.          $6000407787877866608777777777784448444844487F785C77CF77CC4877785CC7C7
  4651.          $77CC488880055555555548870666608888888800666666666666666666
  4652.         cmd:macro =
  4653.         {
  4654.           Typ = "M"
  4655.           Msg = "GAMi"
  4656.         }
  4657.         cmd:macro =
  4658.         {
  4659.           Typ = "M"
  4660.           Msg = "ADDO"
  4661.         }
  4662.       }
  4663.       Outp:tbbtn =
  4664.       {
  4665.         Typ = "+"
  4666.         Txt = "Paths and files to create"
  4667.         Cap = "Output directories..."
  4668.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0FA
  4669.          $0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AAA220FBB003
  4670.          $22022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A0022002A200666002A
  4671.          $AAA20006666666002A200666666666660006666666
  4672.         cmd:macro =
  4673.         {
  4674.           Typ = "M"
  4675.           Msg = "GAMi"
  4676.         }
  4677.         cmd:macro =
  4678.         {
  4679.           Typ = "M"
  4680.           Msg = "OUTP"
  4681.         }
  4682.       }
  4683.       sep: =
  4684.       {
  4685.         Typ = "S"
  4686.         Txt = ""
  4687.       }
  4688.       sep: =
  4689.       {
  4690.         Typ = "S"
  4691.         Txt = "---- Map-editor Settings ----"
  4692.       }
  4693.       DefaultTexture: =
  4694.       {
  4695.         Txt = "Default texture"
  4696.         Typ = "ET"
  4697.         Hint = "Default texture when inserting polyhedrons in maps."$0D"An '[a"
  4698.          "uto]' texture."
  4699.         GameCfg = "Sylphis"
  4700.       }
  4701.       3DLight: =
  4702.       {
  4703.         Txt = "Game Light saturation"
  4704.         Typ = "EF1"
  4705.         Hint = "Currently only for the OpenGL viewer. Larger values make darke"
  4706.          "r scenes."
  4707.       }
  4708.       BrushDecimalPlaces: = {
  4709.         Txt = "No. of Decimal Places for Brushes"
  4710.         Typ = "EF1"
  4711.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  4712.         Min = '1'
  4713.         Max = '40'
  4714.       }
  4715.       sep: = { Typ = "S" Txt = "" }
  4716.       sep: = { Typ = "S" Txt = "---- Build Programs Execution Sequence ----" }
  4717.       t_GameBuildPgms=!
  4718.     }
  4719.  
  4720.     GameTorque:form =
  4721.     {
  4722.       Style = "3"
  4723.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  4724.       Program: =
  4725.       {
  4726.         Typ = "C"
  4727.         Txt = "Torque converter"
  4728.         Items = "map2dif_DEBUG.EXE"
  4729.         //t_ProgramHint=!
  4730.       }
  4731.       Directory: =
  4732.       {
  4733.         Txt = "Directory of Torque files"
  4734.         Typ = "ED"
  4735.         Hint = "Path to the converter executable"
  4736.         CheckFile = ""
  4737.       }
  4738.       AddOns:tbbtn =
  4739.       {
  4740.         Typ = "+"
  4741.         Txt = "Installed Add-ons"
  4742.         Cap = "Add-ons..."
  4743.         Icon = $666008881111111866604441999799916660CCC11011111166602444045555
  4744.          $4866602C2AA478887866602C4A24787F78666022AC48778878666022CC4788887866
  4745.          $6000407787877866608777777777784448444844487F785C77CF77CC4877785CC7C7
  4746.          $77CC488880055555555548870666608888888800666666666666666666
  4747.         cmd:macro = { Typ = "M" Msg = "GAMg" } // switches to Torque (cmd=GAM, game=g)
  4748.         cmd:macro = { Typ = "M" Msg = "ADDO" } // opens Add-ons configuration dialog box
  4749.       }
  4750.       Outp:tbbtn =
  4751.       {
  4752.         Typ = "+"
  4753.         Txt = "Paths and files to create"
  4754.         Cap = "Output directories..."
  4755.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0FA
  4756.          $0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AAA220FBB003
  4757.          $22022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A0022002A200666002A
  4758.          $AAA20006666666002A200666666666660006666666
  4759.         cmd:macro = { Typ = "M" Msg = "GAMg" } // switches to Torque (cmd=GAM, game=g)
  4760.         cmd:macro = { Typ = "M" Msg = "OUTP" } // opens "Output directories" dialog box
  4761.       }
  4762.       sep: = {Typ="S" Txt = ""}
  4763.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  4764.       DefaultTexture: =
  4765.       {
  4766.         t_DefaultTexture = !
  4767.         GameCfg = "Torque"
  4768.       }
  4769.       3DLight: =
  4770.       {
  4771.         Txt = "Game Light saturation"
  4772.         Typ = "EF1"
  4773.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  4774.       }
  4775.       BrushDecimalPlaces: = {
  4776.         Txt = "No. of Decimal Places for Brushes"
  4777.         Typ = "EF1"
  4778.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  4779.         Min = '1'
  4780.         Max = '40'
  4781.       }
  4782.       sep:        = {Typ="S" Txt = ""}
  4783.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  4784.       t_GameBuildPgms=!
  4785.     }
  4786.  
  4787.     GameWildWest:form =
  4788.     {
  4789.       Style = "3"
  4790.       sep: = {Typ="S" Txt="---- Game Settings ----"}
  4791.       Program: = {
  4792.         Typ = "C"     // combo box
  4793.         Txt = "WildWest command-line"
  4794.         Items = "WOLFMP.EXE +set sv_pure 0 +set fs_Game WildWest"
  4795.         t_ProgramHint=!
  4796.       }
  4797.       Directory: =
  4798.       {
  4799.         Txt = "Directory of WildWest"
  4800.         Typ = "ED"      // Edit Directory
  4801.         Hint = "Path to the game executable"
  4802.         CheckFile = "WildWest.exe"
  4803.       }
  4804.       AddOns:tbbtn =       // button (don't forget :tbbtn for all the action buttons !)
  4805.       {
  4806.         Typ = "+"
  4807.         Txt = "Installed Add-ons"
  4808.         Cap = "Add-ons..."
  4809.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  4810.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  4811.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  4812.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  4813.         cmd:macro = {Typ="M" Msg="GAMw"}    // switches to RTCW (cmd=GAM, game=d)
  4814.         cmd:macro = {Typ="M" Msg="ADDO"}    // opens Add-ons configuration dialog box
  4815.       }
  4816.       Outp:tbbtn =
  4817.       {
  4818.         Typ = "+"
  4819.         Txt = "Paths and files to create"
  4820.         Cap = "Output directories..."
  4821.         Icon = $666660000066666666660232AA20666660003332ABA0206602303332ABB0
  4822.                $FA0603303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AA
  4823.                $A220FBB00322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A
  4824.                $0022002A200666002AAAA20006666666002A200666666666660006666666
  4825.         cmd:macro = {Typ="M" Msg="GAMw"}    // switches to RTCW (cmd=GAM, game=d)
  4826.         cmd:macro = {Typ="M" Msg="OUTP"}    // opens "Output directories" dialog box
  4827.       }
  4828.       sep: = {Typ="S" Txt = ""}
  4829.       sep: = {Typ="S" Txt="---- Map-editor Settings ----"}
  4830.       DefaultTexture: =
  4831.       {
  4832.         t_DefaultTexture = !
  4833.         GameCfg = "WildWest"
  4834.       }
  4835.       DefaultTextureTrigger: =
  4836.       {
  4837.         t_DefaultTextureTrigger = !
  4838.         GameCfg = "WildWest"
  4839.       }
  4840.       DefaultTextureClip: =
  4841.       {
  4842.         t_DefaultTextureClip = !
  4843.         GameCfg = "WildWest"
  4844.       }
  4845.       DefaultTextureOrigin: =
  4846.       {
  4847.         t_DefaultTextureOrigin = !
  4848.         GameCfg = "WildWest"
  4849.       }
  4850.       DefaultTextureCaulk: =
  4851.       {
  4852.         t_DefaultTextureCaulk = !
  4853.         GameCfg = "WildWest"
  4854.       }
  4855.       3DLight: =
  4856.       {
  4857.         Txt = "Game Light saturation"
  4858.         Typ = "EF1"
  4859.         Hint = "Currently only for the OpenGL viewer. Larger values make darker scenes."
  4860.       }
  4861.       BrushDecimalPlaces: = {
  4862.         Txt = "No. of Decimal Places for Brushes"
  4863.         Typ = "EF1"
  4864.         Hint="Set for the number of Decimals to write to the map file."$0D"This applies to brushes only, the default is 5 places."
  4865.         Min = '1'
  4866.         Max = '40'
  4867.       }
  4868.       sep:        = {Typ="S" Txt = ""}
  4869.       sep:        = {Typ="S" Txt="---- Build Programs Execution Sequence ----"}
  4870.       t_GameBuildPgms=!
  4871.     }
  4872.  
  4873.     MapColors:form =
  4874.     {
  4875.       Style = "7"       // gray form instead of white one
  4876.       Scheme0: =
  4877.       {
  4878.         Txt = "Color schemes"
  4879.         Cap = "Default color scheme"
  4880.         Typ = "B"     // Button
  4881.         //Msg = "1"
  4882.         Data: =       // the data that this button puts in the object when you click it
  4883.         {
  4884.           InvertedColors = ""
  4885.           ViewXZ     = $E8E8B8
  4886.           ViewXY     = $E8DCB8
  4887.           SelXZ      = $0080C0
  4888.           SelXY      = $0090C0
  4889.           Gray       = $BABABA
  4890.           Axis       = $A6CAF0
  4891.           GridXZ     = $008000
  4892.           GridXY     = $808000
  4893.           GridLines  = $D0D0FF
  4894.           BrEnt      = $800000
  4895.           Duplicator = $0000FF
  4896.           Tag        = $FF0000
  4897.           GrayImage  = $FF0000
  4898.           BSP        = $008080
  4899.           Digger     = $FF00FF
  4900.           Linear     = $FF0080
  4901.           Bezier     = $008080
  4902.         }
  4903.       }
  4904.       Scheme1: =
  4905.       {
  4906.         Cap = "Classic QuArK scheme"
  4907.         Typ = "B"     // Button
  4908.         //Msg = "1"
  4909.         Data: =       // the data that this button puts in the object when you click it
  4910.         {
  4911.           InvertedColors = ""
  4912.           ViewXZ     = $80FF80
  4913.           ViewXY     = $FFFF80
  4914.           SelXZ      = $008000
  4915.           SelXY      = $808000
  4916.           Gray       = $C0C0C0
  4917.           Axis       = $A6CAF0
  4918.           GridXZ     = $008000
  4919.           GridXY     = $808000
  4920.           GridLines  = $D0D0FF
  4921.           BrEnt      = $800000
  4922.           Duplicator = $0000FF
  4923.           Tag        = $FF0000
  4924.           GrayImage  = $FF0000
  4925.           BSP        = $008080
  4926.           Digger     = $FF00FF
  4927.           Linear     = $FF0080
  4928.           Bezier     = $008080
  4929.         }
  4930.       }
  4931.       Scheme2: =
  4932.       {
  4933.         Cap = "Black-on-white scheme"
  4934.         Typ = "B"     // Button
  4935.         //Msg = "1"
  4936.         Data: =
  4937.         {
  4938.           InvertedColors = ""
  4939.           ViewXZ     = $FFFFFF
  4940.           ViewXY     = $FFFFFF
  4941.           SelXZ      = $80FF80
  4942.           SelXY      = $FFFF80
  4943.           Gray       = $C0C0C0
  4944.           Axis       = $A6CAF0
  4945.           GridXZ     = $008000
  4946.           GridXY     = $808000
  4947.           GridLines  = $D0D0FF
  4948.           BrEnt      = $800000
  4949.           Duplicator = $008000
  4950.           Tag        = $FF8040
  4951.           GrayImage  = $0000FF
  4952.           BSP        = $8080FF
  4953.           Digger     = $FF00FF
  4954.           Linear     = $FF0080
  4955.           Bezier     = $008080
  4956.         }
  4957.       }
  4958.       Scheme3: =
  4959.       {
  4960.         Cap = "White-on-black scheme"
  4961.         Typ = "B"     // Button
  4962.         //Msg = "1"
  4963.         Data: =
  4964.         {
  4965.           InvertedColors = "1"
  4966.           ViewXZ     = $000000
  4967.           ViewXY     = $000000
  4968.           SelXZ      = $FF4040
  4969.           SelXY      = $D0B870
  4970.           Gray       = $C0C0C0
  4971.           Axis       = $C1DEFF
  4972.           GridXZ     = $008000
  4973.           GridXY     = $808000
  4974.           GridLines  = $003C80
  4975.           BrEnt      = $FFFF80
  4976.           Duplicator = $C000C0
  4977.           Tag        = $FF0000
  4978.           GrayImage  = $C1DEFF
  4979.           BSP        = $419AFF
  4980.           Digger     = $FF00FF
  4981.           Linear     = $FF0080
  4982.           Bezier     = $008080
  4983.         }
  4984.       }
  4985.       Sep1: =
  4986.       {
  4987.         Typ = "S"    // Separator
  4988.         Txt = ""
  4989.       }
  4990.       InvertedColors: =
  4991.       {
  4992.         Txt = "Base color scheme"
  4993.         Typ = "X"     // checkboX
  4994.         Cap = "white on black"
  4995.       }
  4996.       ViewXZ:     = { Txt="Side map view (XZ)"          Typ="LI" } // coLor selection, Integer
  4997.       ViewXY:     = { Txt="Top map view (XY)"           Typ="LI" }
  4998.       SelXZ:      = { Txt="Selected brushes, side view" Typ="LI" }
  4999.       SelXY:      = { Txt="Selected brushes, top view"  Typ="LI" }
  5000.       Gray:       = { Txt="Out-of-view grayed parts"    Typ="LI" }
  5001.       Axis:       = { Txt="Axis"                        Typ="LI" }
  5002.       GridXZ:     = { Txt="Grid dots, side view"        Typ="LI" }
  5003.       GridXY:     = { Txt="Grid dots, top view"         Typ="LI" }
  5004.       GridLines:  = { Txt="Grid lines"                  Typ="LI" }
  5005.       BrEnt:      = { Txt="Brush entities (doors,...)"  Typ="LI" }
  5006.       Duplicator: = { Txt="Duplicator images"           Typ="LI" }
  5007.       Tag:        = { Txt="Tagged point / group handle" Typ="LI" }
  5008.       GrayImage:  = { Txt="While dragging"              Typ="LI" }
  5009.       BSP:        = { Txt="BSP map"                     Typ="LI" }
  5010.       Digger:     = { Txt="Digging polyhedrons"         Typ="LI" }
  5011.       Bezier:     = { Txt="Bezier patches"              Typ="LI" }
  5012.       Linear:     = { Txt="Linear Mapping box"          Typ="LI" }
  5013.     }
  5014.     MdlColors:form =
  5015.     {
  5016.       Style = "7"       // gray form instead of white one
  5017.       Scheme0: =
  5018.       {
  5019.         Txt = "Color schemes"
  5020.         Cap = "Default color scheme"
  5021.         Typ = "B"     // Button
  5022.         //Msg = "1"
  5023.         Data: =       // the data that this button puts in the object when you click it
  5024.         {
  5025.           InvertedColors = ""
  5026.           ViewXZ     = $E8E8B8
  5027.           ViewXY     = $E8DCB8
  5028.           SelXZ      = $0080C0
  5029.           SelXY      = $0090C0
  5030.           Gray       = $BABABA
  5031.           Axis       = $A6CAF0
  5032.           GridXZ     = $008000
  5033.           GridXY     = $808000
  5034.           GridLines  = $D0D0FF
  5035.           Tag        = $FF0000
  5036.           GrayImage  = $FF0000
  5037.           Linear     = $FF0080
  5038.           Vertices   = $FF0000
  5039.         }
  5040.       }
  5041.       Sep1: =
  5042.       {
  5043.         Typ = "S"    // Separator
  5044.       }
  5045.       InvertedColors: =
  5046.       {
  5047.         Txt = "Base color scheme"
  5048.         Typ = "X"     // checkboX
  5049.         Cap = "white on black"
  5050.       }
  5051.       ViewXZ:     = { Txt = "Side map view (XZ)" Typ = "LI" } // coLor selection, Integer
  5052.       ViewXY:     = { Txt = "Top map view (XY)" Typ = "LI" }
  5053.       SelXZ:      = { Txt = "Selected brushes, side view" Typ = "LI" }
  5054.       SelXY:      = { Txt = "Selected brushes, top view" Typ = "LI" }
  5055.       Gray:       = { Txt = "Out-of-view grayed parts" Typ = "LI" }
  5056.       Axis:       = { Txt = "Axis" Typ = "LI" }
  5057.       GridXZ:     = { Txt = "Grid dots, side view" Typ = "LI" }
  5058.       GridXY:     = { Txt = "Grid dots, top view" Typ = "LI" }
  5059.       GridLines:  = { Txt = "Grid lines" Typ = "LI" }
  5060.       Tag:        = { Txt = "Tagged point / group handle" Typ = "LI" }
  5061.       GrayImage:  = { Txt = "While dragging" Typ = "LI" }
  5062.       Linear:     = { Txt = "Linear Mapping box" Typ = "LI" }
  5063.       Vertices:   = { Txt = "Vertex dots" Typ = "LI" }
  5064.     }
  5065.     HotKeyForm:incl =
  5066.     {
  5067.       Txt = "&R" // Read-only but use the 'Specific-name' for label
  5068.       Typ = "R"
  5069.       Hint = "If map-editor has started, new assignment will apply on"
  5070.           $0D"next QuArK restart. Otherwise when map-editor is started."
  5071.     }
  5072.    AlphaKeyForm:incl =
  5073.     {
  5074.       Txt = "&R" // Read-only but use the 'Specific-name' for label
  5075.       Typ = "R"
  5076.     }
  5077.     MouseForm:incl =       // ":incl" objects can be included in other objects (see below)
  5078.     {
  5079.       Typ = "CL"      // Combobox List
  5080.       Items = "Ignored"
  5081.            $0D"Select object"
  5082.            $0D"Frozen selection"
  5083.            $0D"Select multiple"
  5084.            $0D"Select and Menu"
  5085.            $0D"Multiselect and Menu"
  5086.            $0D"Menu only"
  5087.            $0D"Zoom In"
  5088.            $0D"Zoom Out"
  5089.       Values = ""
  5090.             $0D"S"
  5091.             $0D"FS"
  5092.             $0D"ST"
  5093.             $0D"SM"
  5094.             $0D"STM"
  5095.             $0D"M"
  5096.             $0D"+"
  5097.             $0D"-"
  5098.     }
  5099.     MDragForm:incl =
  5100.     {
  5101.       Typ = "CL"      // Combobox List
  5102.       Items = "Ignored if not on an handle"
  5103.            $0D"Rectangle selection"
  5104.            $0D"Multiple rect. sel."
  5105.            $0D"Rect. sel. and Menu"
  5106.            $0D"MultiRectSel and Menu"
  5107.            $0D"Scroll View"
  5108.            $0D"Zoom In rect. / sidestep"
  5109.            $0D"Zoom Out rect. / sidestep"
  5110.            $0D"Mouse Free Zoom"
  5111.            $0D"Circle Strafe Selection"
  5112.       Values = ""
  5113.             $0D"RS"
  5114.             $0D"RST"
  5115.             $0D"RSM"
  5116.             $0D"RSTM"
  5117.             $0D"S"
  5118.             $0D"R+"
  5119.             $0D"R-"
  5120.             $0D"Z"
  5121.             $0D"C"
  5122.     }
  5123.     MapHotKeys:form =
  5124.     {
  5125.        Style = "7"
  5126.        Open: = {HotKeyForm = !}
  5127.        Save: = {HotKeyForm = !}
  5128.        Close: = {HotKeyForm = !}
  5129.        sep:={Typ="S" Txt = ""}
  5130.        Cut: = {HotKeyForm = !}
  5131.        Copy: = {HotKeyForm = !}
  5132.        Delete: = {HotKeyForm = !}
  5133.        Undo: = {HotKeyForm = !}
  5134.        Redo: = {HotKeyForm = !}
  5135.        Duplicate: = {HotKeyForm = !}
  5136.        sep:={Typ="S" Txt = ""}
  5137.        Cancel Selections: = {HotKeyForm = !}
  5138.        Select Parent: = {HotKeyForm = !}
  5139.        Collapse Tree: = {AlphaKeyForm = ! Hint="Prevent collapse of treeview on climb with Parent key."$0D" Key must be an ordinary alphabetic key, not used by 3DView|Keyboard Settings."}
  5140.        Select Child: = {HotKeyForm = !}
  5141.        Select Next: = {HotKeyForm = !}
  5142.        Select Previous: = {HotKeyForm = !}
  5143.        Same Type = {AlphaKeyForm = ! Hint="When this key is depressed, prev/next selection must be of same type" $0D
  5144.                      " Must be an ordinary alphabetic key, not used by 3DView|Keyboard Settings."}
  5145.        sep:={Typ="S" Txt = ""}
  5146.        Insert: = {HotKeyForm = !}
  5147.        Tag Side: = {HotKeyForm = !}
  5148.        Clear Tags: = {HotKeyForm = !}
  5149.        Glue Side: = {HotKeyForm = !}
  5150.        Add to Tagged: = {HotKeyForm = !}
  5151.        Align Texture: = {HotKeyForm = !}
  5152.        Link Selection: = {HotKeyForm = !}
  5153.        Select Tagged Faces: = {HotKeyForm = !}
  5154.        Extend Selection: = {HotKeyForm = !}
  5155.        Unrestrict Selection: = {HotKeyForm = !}
  5156.        Restrict to Selection: = {HotKeyForm = !}
  5157.        Zoom to Selection: = {HotKeyForm = !}
  5158.        Brush Subtraction: = {HotKeyForm = !}
  5159.        Browse Multiple Selection = {HotKeyForm = !}
  5160.        Freeze Selection: = {HotKeyForm = !}
  5161.        Unfreeze Selection: = {HotKeyForm = !}
  5162.        Invert Face Selection: = {HotKeyForm = !}
  5163.        Make Detail: = {HotKeyForm = !}
  5164.        AxisXYZ: = {HotKeyForm = !}
  5165.        Rebuild3D: = {HotKeyForm = !}
  5166.        sep:={Typ="S" Txt = ""}
  5167.        Game Menu:= {Txt="&R" Typ="ESR"}
  5168.     }
  5169.     MapAuxKeys:form =
  5170.     {
  5171.        Style = "7"
  5172.        Select Faces: = {
  5173.          Txt = "&R" Typ = "R"
  5174.          Hint = "If this key is down, a mouseclick will select only faces."$0D
  5175.          "If map-editor has started, new assignment will apply on"
  5176.           $0D"next QuArK restart. Otherwise when map-editor is started."
  5177.        }
  5178.        Select Brushes: = {
  5179.          Txt = "&R" Typ = "R"
  5180.          Hint = "If this key is down, a mouseclick will select only brushes."$0D
  5181.          "If map-editor has started, new assignment will apply on"
  5182.           $0D"next QuArK restart. Otherwise when map-editor is started."
  5183.        }
  5184.        Select Curves: = {
  5185.          Txt = "&R" Typ = "R"
  5186.          Hint = "If this key is down, a mouseclick will select only curves (beziers)."$0D
  5187.          "If map-editor has started, new assignment will apply on"
  5188.           $0D"next QuArK restart. Otherwise when map-editor is started."
  5189.        }
  5190.        Select Entities: = {
  5191.          Txt = "&R" Typ = "R"
  5192.          Hint = "If this key is down, a mouseclick will select only entities (point and brush)."$0D
  5193.          "If map-editor has started, new assignment will apply on"
  5194.           $0D"next QuArK restart. Otherwise when map-editor is started."
  5195.        }
  5196.     }
  5197.     MapMouse:form =
  5198.     {
  5199.       Style = "7"
  5200.       Left: =
  5201.       {
  5202.         Txt = "Left mouse button"
  5203.         MouseForm = !    // Includes "MouseForm:incl" here at load time (the :incl must be present BEFORE the ! in the file)
  5204.       }
  5205.       LeftShift:   = { Txt = "Left button with Shift key" MouseForm = ! }
  5206.       LeftCtrl:    = { Txt = "Left button with Ctrl key" MouseForm = ! }
  5207.       Right:       = { Txt = "Right mouse button" MouseForm = ! }
  5208.       RightShift:  = { Txt = "Right button with Shift key" MouseForm = ! }
  5209.       RightCtrl:   = { Txt = "Right button with Ctrl key" MouseForm = ! }
  5210.       Middle:      = { Txt = "Middle mouse button" MouseForm = ! }
  5211.       MiddleShift: = { Txt = "Middle button with Shift key" MouseForm = ! }
  5212.       MiddleCtrl:  = { Txt = "Middle button with Ctrl key" MouseForm = ! }
  5213.       sep:={Typ="S" Txt = ""}
  5214.       LeftDrag:        = { Txt = "Left button dragging" MDragForm = ! }
  5215.       LeftDragShift:   = { Txt = "Left dragging with Shift" MDragForm = ! }
  5216.       LeftDragCtrl:    = { Txt = "Left dragging with Ctrl" MDragForm = ! }
  5217.       RightDrag:       = { Txt = "Right button dragging" MDragForm = ! }
  5218.       RightDragShift:  = { Txt = "Right dragging with Shift" MDragForm = ! }
  5219.       RightDragCtrl:   = { Txt = "Right dragging with Ctrl" MDragForm = ! }
  5220.       MiddleDrag:      = { Txt = "Middle button dragging" MDragForm = ! }
  5221.       MiddleDragShift: = { Txt = "Middle dragging with Shift" MDragForm = ! }
  5222.       MiddleDragCtrl:  = { Txt = "Middle dragging with Ctrl" MDragForm = ! }
  5223.     }
  5224.     MapKeys:form = {
  5225.       GridPlus    = {Typ="K" Txt="Increase grid step (*2)"}
  5226.       GridMinus   = {Typ="K" Txt="Decrease grid step (/2)"}
  5227.       ZoomIn      = {Typ="K" Txt="Zoom in"}
  5228.       ZoomOut     = {Typ="K" Txt="Zoom out"}
  5229.       MoveLeft    = {Typ="K" Txt="Move objects to the left"}
  5230.       MoveRight   = {Typ="K" Txt="Move objects to the right"}
  5231.       MoveUp      = {Typ="K" Txt="Move objects up"}
  5232.       MoveDown    = {Typ="K" Txt="Move objects down"}
  5233.     }
  5234.     GeneralDisplay:form =
  5235.     {
  5236.       Style = "3"
  5237.       Gamma: = {Txt="Gamma correction" Typ="EF1" Hint="Gamma correction to display texture (1=darker, 2=lighter)"}
  5238.       MarsCaption: = {Txt="Window captions" Typ="X" Cap="Colorful"}
  5239.       sep: = {Typ="S" Txt = ""}
  5240.       AutoFocus: = {Txt="Activate windows on mouseover" Typ="X" Cap="AutoFocus" Hint="if checked, the focus (active window) follows the mouse between windows (e.g. in the map editor)"}
  5241.       sep: = {Typ="S" Txt = ""}
  5242.       sep: = {Typ="S" Txt="Button and object icon colors"}
  5243.       Unsel: = {Typ="X" Txt="If not selected" Cap="display blue icons" Hint="Check this to display blue icons instead of brown ones for 'unselected' icons"}
  5244.       Sel: =   {Typ="X" Txt="If selected"     Cap="display blue icons" Hint="Uncheck this to display brown icons instead of blue ones for 'selected' icons"}
  5245.       IconPath: = {Typ="CL" Txt="Icon size"   Values="images\\"$0D"lgicons\\"  Items="Normal"$0D"Large (LGIcons needed !)" Hint="Large icons require you to download first the 'LGIcons' pack from the web site."}
  5246.       sep: = {Typ="S" Bold="0" Txt="(restart QuArK to reload icons with the new colors"}
  5247.       sep: = {Typ="S" Bold="0" Txt="  and size after you made changes here)"}
  5248.       sep: = {Typ="S" Txt = ""}
  5249.       MppTopBtns: = {Typ="X" Txt="Multi-pages panels" Cap="Buttons above"}
  5250.     }
  5251.     GeneralMemory:form =
  5252.     {
  5253.       MaxUndo: = {Txt="Max. undo levels" Typ="EF1" Hint="Maximum number of consecutive undos allowed"}
  5254.       MinUndo: = {Txt="Min. undo levels" Typ="EF1" Hint="Minimum number of consecutive undos allowed (warn if not enough memory for this number)"}
  5255.       UndoBufferSize: = {Txt="Size of undo buffer (MB)" Typ="EF1" Hint="Deletes older undo levels if it would take more memory than this"}
  5256.       GameBufferSize: = {Txt="Size of game buffer (MB)" Typ="EF1" Hint="Size of the memory buffer to allocate while loading files from Quake (e.g. textures)"}
  5257.       CompressionLevel: = {Txt="Compression Level" Typ="EF1" Hint="Level of Compression to use for zip files (0 .. 9)"}
  5258.       CompressionBufferSize: = {Txt="Size of compression buffer (KB)" Typ="EF1" Hint="Size of memory buffer to allocate when compressing files"}
  5259.     }
  5260.     externaledit:incl = {
  5261.       Typ = "EP"
  5262.       DefExt = "exe"
  5263.       Hint = "the program to use to edit files of this type, or <open> or <edit>"
  5264.     }
  5265.     GeneralExternalEditors:form =
  5266.     {
  5267.       Style = "3"
  5268.       Info: = {Typ="S" Txt="External editors to called from QuArK"}
  5269.       Info2: = {Typ="S" Txt = ""}
  5270.       .pcx: = { Txt="PCX images" externaledit = ! }
  5271.       .tga: = { Txt="TGA images" externaledit = ! }
  5272.       .bmp: = { Txt="BMP images" externaledit = ! }
  5273.       .jpg: = { Txt="JPG images" externaledit = ! }
  5274.       .wav: = { Txt="WAV sounds" externaledit = ! }
  5275.       .cin: = { Txt="CIN videos" externaledit = ! }
  5276.       .mdl: = { Txt="MDL models" externaledit = ! }
  5277.       .md2: = { Txt="MD2 models" externaledit = ! }
  5278.       .map: = { Txt="MAP text files" externaledit = ! }
  5279.       .wal: = { Txt="WAL textures" externaledit = ! }
  5280.       .swl: = { Txt="SWL Sin textures" externaledit = ! }
  5281.       .m8:  = { Txt="M8 textures" externaledit = ! }
  5282.       .pak: = { Txt="PAK archives" externaledit = ! }
  5283.       .pk3: = { Txt="PK3 archives" externaledit = ! }
  5284.       .pk4: = { Txt="PK4 archives" externaledit = ! }
  5285.       .sin: = { Txt="SIN Pak archives" externaledit = ! }
  5286.       .bsp: = { Txt="BSP compiled maps" externaledit = ! }
  5287.       .wad: = { Txt="WAD texture lists" externaledit = ! }
  5288.     }
  5289.     GeneralQuakeC:form =
  5290.     {
  5291.       Style = "6"
  5292.       Font0: = {Typ="F" Txt="Plain text" Cap="Plain text sample"}
  5293.       Font5: = {Typ="F" Txt="Reserved words" Cap="if else float"}
  5294.       Font1: = {Typ="F" Txt="Vectors" Cap="'100 -50 20'"}
  5295.       Font3: = {Typ="F" Txt="Strings" Cap=$22"String sample"$22}
  5296.       Font2: = {Typ="F" Txt="Operators" Cap="+ - * / < > = !"}
  5297.       Font4: = {Typ="F" Txt="Comments" Cap="// Comments"}
  5298.       Font6: = {Typ="F" Txt="Brackets" Cap="{   }"}
  5299.       Sep1: = {Typ="S" Txt = ""}
  5300.       Enabled: = {Typ="X" Txt="Code Syntax Highlighting" Cap="Enabled"}
  5301.     }
  5302.     General3DView:form =
  5303.     {
  5304.       Lib: = {
  5305.         Txt="Select 3D viewer"
  5306.         Typ="CL"
  5307.         Items  = "3DFX card (Glide drivers)" $0D "Software only"
  5308.         Values = "glide2x.dll" $0D "qrksoftg.dll"
  5309.         Hint="see also the OpenGL configuration page"
  5310.       }
  5311.       Entities: = {Txt="Entities in 3D" Cap="Display entities" Typ="X" Hint="Show entities in the 3D view"}
  5312.       //EntityBoxes: = {Txt="   ``"       Cap="as bounding boxes only" Typ="X" Hint="If not checked, entities are displayed as 3D Models when available"}
  5313.       FarDistance: = {Txt="``Far┤┤ distance" Typ="EF1" Min="50" Hint="How far you can view before objects are lost in the fog (lower numbers accelerate rendering because there is less to display)"}
  5314.       VAngle: = {Txt="Vertical view angle" Typ="EF1" Min="5" Max="80" Hint="Angle between the horizon and the higher and lower points you can see - larger numbers mean smaller image"}
  5315.       FrameColor: = {Txt="Frame color" Typ="LI" Hint="Color displayed besides the image if the window is too large"}
  5316.       TextureMaxDimension: = {Txt="Textures max-dimension" Typ="C"
  5317.         Items ="256"$0D"128"$0D"64"$0D"32"$0D"16"$0D"8"
  5318.         Values=  "8"$0D  "7"$0D "6"$0D "5"$0D "4"$0D"3"
  5319.         Hint="A lower value uses less memory for texture-images,"$0D"but will also decrease the texture quality in the 3D-views"
  5320.       }
  5321.       Sep0: = {Typ="S" Txt = ""}
  5322.       L0: = {Typ="S" Txt="---- 3DFX card owners only ----"}
  5323.       //FullScreen: = {Txt="3DFX Full-screen options" Typ="X" Cap="Full-screen" Hint="If not checked, the 3DFX card display is copied in a window"}
  5324.       TwoMonitors: = {
  5325.         Txt="Second monitor on 3DFX"
  5326.         Typ="CL"
  5327.         Items  = "I've only one monitor" $0D "3DFX monitor at left" $0D "3DFX monitor at right"
  5328.         Values = "" $0D "1" $0D "2"
  5329.         Hint="If you have two monitors (two screens), you can connect one on the 3DFX card and one on the 2D card"
  5330.       }
  5331.       FullScreenGamma: = {Txt="Full-screen gamma correction" Typ="EF1" Hint="Gamma correction for full-screen 3DFX mode only"}
  5332.       FullScreenSize: =  {Txt="Full-screen size" Typ="EF2" Hint="resolution is always 640x480, but a lower screen size will accelerate rendering by displaying black bands on the sides"}
  5333.       FogDensity: = {Txt="Fog density" Typ="EF1" Min='1' Hint="Fog density. Try yourself to see what it does."}
  5334.       FogColor: = {Txt="Fog color" Typ="LI" Hint="Fog color (recommended : either black or white)"}
  5335.       TranspFactor: = {Txt="Isometric transparent fraction" Typ="EF1" Hint="For non-perspective views : if nonzero, a part of what is behind the 1st cutting plane is still visible (transparent)"}
  5336.       Sep2: = {Typ="S" Txt = ""}
  5337.       L1: = {Typ="S" Txt="---- Software driver only ----"}
  5338.       SoftQuality: = {
  5339.         Txt="Software image quality"
  5340.         Typ="CL"
  5341.         Items  = "High details" $0D "Low details" $0D "Low details, smoothed"
  5342.         Values =     "0"        $0D     "1"       $0D     "2"
  5343.         Hint = "Slowest: High details   Fastest: Low details"
  5344.       }
  5345.       DynamicQuality: = {
  5346.         Txt="Quality while walking"
  5347.         Typ="CL"
  5348.         Items  = "High details" $0D "Low details" $0D "Low details, smoothed"
  5349.         Values =     "0"        $0D     "1"       $0D     "2"
  5350.         Hint = "Slowest: High details   Fastest: Low details"
  5351.       }
  5352.       Sep2c: = {Typ="S" Txt = ""}
  5353.       L5: = {Typ="S" Txt="Mouse sensitivity (neg. numbers invert direction)"}
  5354.       MouseWalk:     = {Typ="EF1" Txt="  walk forward/backward"}
  5355.       MouseHLook:    = {Typ="EF1" Txt="  look left/right"}
  5356.       MouseVLook:    = {Typ="EF1" Txt="  look up/down"}
  5357.       MouseSideStep: = {Typ="EF1" Txt="  sidestep left/right"}
  5358.       MouseUpDown:   = {Typ="EF1" Txt="  move up/down"}
  5359.       Sep2b: = {Typ="S" Txt = ""}
  5360.       L4: = {Typ="S" Txt="Keyboard settings"}
  5361.       KeyForward:    = {Typ="K" Txt="  forward"}
  5362.       KeyBack:       = {Typ="K" Txt="  backward"}
  5363.       KeyLeft:       = {Typ="K" Txt="  turn left"}
  5364.       KeyRight:      = {Typ="K" Txt="  turn right"}
  5365.       KeyStepLeft:   = {Typ="K" Txt="  sidestep left"}
  5366.       KeyStepRight:  = {Typ="K" Txt="  sidestep right"}
  5367.       KeyViewUp:     = {Typ="K" Txt="  view up"}
  5368.       KeyViewDown:   = {Typ="K" Txt="  view down"}
  5369.       KeyViewCenter: = {Typ="K" Txt="  center view"}
  5370.       KeyUp:         = {Typ="K" Txt="  move up"}
  5371.       KeyDown:       = {Typ="K" Txt="  move down"}
  5372.       KeyRun:        = {Typ="K" Txt="  run"}
  5373.       KeyStep:       = {Typ="K" Txt="  sidestep"}
  5374.       Sep3: = {Typ="S" Txt = ""}
  5375.       L3: = {Typ="S" Txt="Keyboard movement dynamics"}
  5376.       Speed: = {Txt="Movement speed" Typ="EF1" Hint="How fast you move, in pixels/second"}
  5377.       RunSpeed: = {Txt="Running speed" Typ="EF1" Hint="How fast you move when you hold down the run key, in pixels/second"}
  5378.       RotateSpeed: = {Txt="Rotation speed" Typ="EF1" Hint="How fast you turn left/right or look up/down, in degrees/second"}
  5379.       AccelDelay: = {Txt="Acceleration delay" Typ="EF1" Hint="How much time it takes until you reach full speed (``0┤┤ allowed)"}
  5380.       RunAccelDelay: = {Txt="Running acceleration delay" Typ="EF1" Hint="As above but while the run key is down"}
  5381.     }
  5382.     GeneralOpenGL:form =
  5383.     {
  5384.       Style = "3"
  5385.       Sep0: = {Typ="S" Txt = ""}
  5386.       L0: = {Typ="S" Txt="---- OpenGL 1.1 hardware owners only ----"}
  5387.       Mode: = {
  5388.         Txt="Use OpenGL for..."
  5389.         Typ="CL"
  5390.         Items  = "'3DGL' button only" $0D "all perspective views(experimental SceneProxy)" $0D "(all views: not supported)"
  5391.         Values = "" $0D "1" $0D "2"
  5392.       }
  5393.       Warning2: = {Typ="X" Txt="The next time..." Cap="issue a Warning"}
  5394.       WndRect: = {Typ="EF4" Txt="Position/size of window" Hint="Position and size in pixels of the OpenGL window"}
  5395.       Fog: = {Typ="X" Txt="Fog" Cap="Fog enabled"}
  5396.       Lights: = {
  5397.         Txt="Lights"
  5398.         Typ="CL"
  5399.         Items  = "Disabled (map full bright)" $0D "Enabled in '3DGL' window" $0D "(all windows: not supported)"
  5400.         Values = "" $0D "1" $0D "2"
  5401.         Hint="Levels with few lights will look black -- turn off lighting in this case"
  5402.       }
  5403.       L0: = {Typ="S" Bold="0" Txt="To change overall light brightness, see the"}
  5404.       L0: = {Typ="S" Bold="0" Txt="configuration page for each game."}
  5405.       Sep0: = {Typ="S" Txt = ""}
  5406.       L0: = {Typ="S" Txt="---- troubleshooting options ----"}
  5407.       Bilinear: = { Typ="X" Txt="Bilinear Filtering" Cap="Enabled" }
  5408.       DoubleBuffer: = { Typ="X" Txt="Double buffering" Cap="Enabled" }
  5409.       SupportsGDI:  = { Typ="X" Txt="'Supports GDI' flag" Cap="Enabled" }
  5410.       AllowsGDI:    = { Typ="X" Txt="Over-the-scene lines+icons" Cap="Enabled" }
  5411.       ColorBits: = { Typ="EF1" Txt="Color bits (0=current)" }
  5412.       DepthBits: = { Typ="EF1" Txt="Depth buffer bits" }
  5413.       VCorrection: = { Typ="EF1" Txt="Size correction" Hint="Corrects misalignments between the image and the wireframe lines over it. For example, Windows NT's software OpenGL is known to require a correction of about 0.92 instead of 1; otherwise, the textured images are smaller than the wireframes." }
  5414.       GLLists: = { Typ="X" Txt="GL Lists" Cap="Enabled" Hint="Speeds up rendering when lights are enabled"}
  5415.     }
  5416.     GeneralAssociations:form =
  5417.     {
  5418.       Style = "3"
  5419.       t: = {Typ="S" Txt="File extensions Association"}
  5420.       t: = {Typ="S" Txt = ""}
  5421.       t: = {Typ="S" Bold="0" Txt="Check the file types to associate with QuArK, then click"}
  5422.       btn:tbbtn = {
  5423.         Typ="M"
  5424.         Msg="ASSO"
  5425.         Cap="Associate now !"
  5426.         Icon = $666008881111111866604441999799916660CCC00111111166608880B3088848
  5427.                $66000000BB30FF7860BBBBB3BBB30F7860FBBBBBBBBB0F7860FFFFFFBBBB0F78
  5428.                $66000000BBB0FF7866607770FF0FFF78444844400487FF785C77CF77CC487778
  5429.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  5430.       }
  5431.     //.qrk: = {Typ="X" Cap=".qrk" Txt="QuArK main file type"}
  5432.     //.qkm: = {Typ="X" Cap=".qkm" Txt="QuArK maps (if not in .qrk)"}
  5433.       .map: = {Typ="X" Cap=".map" Txt="Standard Quake .map files"}
  5434.       .vmf: = {Typ="X" Cap=".vmf" Txt="Valve map format .vmf files"}
  5435.     //.qkl: = {Typ="X" Cap=".qkl" Txt="QuArK models (if not in .qrk)"}
  5436.       .md2: = {Typ="X" Cap=".md2" Txt="Standard Quake 2 Models"}
  5437.       .mdl: = {Typ="X" Cap=".mdl" Txt="Standard Quake 1 Models"}
  5438.       .pak: = {Typ="X" Cap=".pak" Txt="PACK files"}
  5439.       .sin: = {Typ="X" Cap=".sin" Txt="PACK files for Sin"}
  5440.       .pk3: = {Typ="X" Cap=".pk3" Txt="PACK files for Quake 3"}
  5441.       .pk4: = {Typ="X" Cap=".pk4" Txt="PACK files for Doom 3"}
  5442.       .bsp: = {Typ="X" Cap=".bsp" Txt="Compiled maps"}
  5443.       .qc:  = {Typ="X" Cap=".qc"  Txt="QuakeC Code (Quake 1)"}
  5444.       .hc:  = {Typ="X" Cap=".hc"  Txt="HexenC Code (Hexen II)"}
  5445.       .wad: = {Typ="X" Cap=".wad" Txt="Quake 1 Textures group"}
  5446.       .wal: = {Typ="X" Cap=".wal" Txt="Quake 2 Texture file"}
  5447.       .swl: = {Typ="X" Cap=".swl" Txt="Sin Texture file"}
  5448.       .m8:  = {Typ="X" Cap=".m8"  Txt="Heretic II Texture file"}
  5449.       .pcx: = {Typ="X" Cap=".pcx" Txt="PCX Images (Quake 2)"}
  5450.       .tga: = {Typ="X" Cap=".tga" Txt="TGA Images"}
  5451.       .jpg: = {Typ="X" Cap=".jpg" Txt="JPEG Images"}
  5452.       .bmp: = {Typ="X" Cap=".bmp" Txt="Standard Windows Bitmap"}
  5453.       .cin: = {Typ="X" Cap=".cin" Txt="Video (Quake 2)"}
  5454.       .wav: = {Typ="X" Cap=".wav" Txt="Sound"}
  5455.       .zip: = {Typ="X" Cap=".zip" Txt="ZIP archives"}
  5456.       .qme: = {Typ="X" Cap=".qme" Txt="Files from QuArK version 4"}
  5457.       btn:tbbtn = {
  5458.         Typ="M"
  5459.         Msg="ASSK"
  5460.         Cap="Remove all associations"
  5461.         Icon = $6660088888888888666044487777777866997770088899886999988073099998
  5462.                $66999990779999786079999979999F7860F7999999990F7860FFFF9999970F78
  5463.                $660009999990FF786660999999999F7844499990099999788799997777999978
  5464.                $8799977777489990099988888848890666908888888800666666666666666666
  5465.       }
  5466.     }
  5467.     MapOptions:form =
  5468.     {
  5469.       Style = "1"
  5470.       DrawAxis:                 = {Typ="X" Txt="Map background"                 Cap="Draw axis"                            }
  5471.       EntityLinesDispersion:    = {Typ="X" Txt="   ``"                          Cap="Show indirect 'target' links"         }
  5472.       DrawMapLimit:             = {Typ="X" Txt="   ``"                          Cap="Draw map limits"                      }
  5473.       SolidGrid:                = {Typ="X" Txt="Grid"                           Cap="Grid as lines"                        }
  5474.       GridVisible:              = {Typ="X" Txt="   ``"                          Cap="Grid visible"                         }
  5475.       GridActive:               = {Typ="X" Txt="   ``"                          Cap="Grid active"                          }
  5476.       GridVisibleTex:           = {Typ="X" Txt="   ``"                          Cap="Show it on textured views too"        }
  5477.       RedLines2:                = {Typ="X" Txt="Red selection lines"            Cap="Both red lines"                       }
  5478.       CompassNumbers:           = {Typ="X" Txt="Compass"                        Cap="Display angle values"                 }
  5479.     //GrayOutOfView:            = {Typ="X" Txt="Map view mode"                  Cap="Gray out of view"                     }
  5480.     //HideOutOfView:            = {Typ="X" Txt="   ``"                          Cap="Hide out of view"                     }
  5481.     //Textured:                 = {Typ="X" Txt="   ``"                          Cap="Textured view"                        }
  5482.     //ViewModels:               = {Typ="X" Txt="Textured view"                  Cap="...include Models"                    }
  5483.       NoScrollBars:             = {Typ="X" Txt="Map view scroll"                Cap="Hide scroll bars"                     }
  5484.       CrossCursor:              = {Typ="X" Txt="Mouse cursor"                   Cap="Cross-like cursor"                    }
  5485.       HideMouseDrag:            = {Typ="X" Txt="   ``"                          Cap="Hidden while dragging"                }
  5486.       AutoAdjustNormal:         = {Typ="X" Txt="Polyhedron editing"             Cap="Quantize angles"                       }
  5487.       PagesLocked:              = {Typ="X" Txt="Multi-pages panel"              Cap="Locked"                               }
  5488.       TexPanelActive:           = {Typ="X" Txt="   ``"                          Cap="Show texture"                         }
  5489.       TexPanelLight:            = {Typ="X" Txt="   ``"                          Cap="Light gradient"                       }
  5490.       BBoxAlways:               = {Typ="X" Txt="Entities Bounding boxes"        Cap="Bounding frame corner"                }
  5491.       BBoxSelected:             = {Typ="X" Txt="   ``"                          Cap="Dark box on selected"                 }
  5492.       DeleteFaces:              = {Typ="X" Txt="Unused faces && polys"          Cap="Delete unused faces"                  }
  5493.       PolySubtractMax:          = {Typ="X" Txt="Polyhedron subtraction"         Cap="Allow overlapping"                    }
  5494.       ComputePolys:             = {Typ="X" Txt="   ``"                          Cap="Dig in 3D views"                      }
  5495.       HideFaces:                = {Typ="X" Txt="Polyhedron faces"               Cap="Hide faces in tree"                   }
  5496.       AutoClosePoly:            = {Typ="X" Txt="   ``"                          Cap="Auto collapse polyhedrons"            }
  5497.       HandleHints:              = {Typ="X" Txt="Hints (help rectangles)"        Cap="Hints for map handles"                }
  5498.       Recenter:                 = {Typ="X" Txt="Position of new objects"        Cap="Screen center"                        }
  5499.       AutoCheckMap:             = {Typ="X" Txt="When building the map"          Cap="Perform checks first"                 }
  5500.       IgnoreToBuild:            = {Typ="X" Txt="   ``"                          Cap="Ignore groups marked so"              }
  5501.       DisableMapComments:       = {Typ="X" Txt="   ``"                          Cap="Don't write comments in .map files"   }
  5502. //      DisableEnhTex:          = {Typ="X" Txt="   ``"                          Cap="Don't write //TX# in .map files"      }
  5503.       DisableFPCoord:           = {Typ="X" Txt="   ``"                          Cap="Don't write floating-point coords"    }
  5504.       UseIntegralVertices:      = {Typ="X" Txt="   ``"                          Cap="Use Integral Vertices as Threepoints" }
  5505.     }
  5506.     MdlOptions:form =
  5507.     {
  5508.       Style = "1"
  5509.       DrawAxis:                 = {Typ="X" Txt="Model background"                 Cap="Draw axis"                            }
  5510.       DrawMapLimit:             = {Typ="X" Txt="   ``"                          Cap="Draw model limits"                      }
  5511.       SolidGrid:                = {Typ="X" Txt="Grid"                           Cap="Grid as lines"                        }
  5512.       GridVisible:              = {Typ="X" Txt="   ``"                          Cap="Grid visible"                         }
  5513.       GridActive:               = {Typ="X" Txt="   ``"                          Cap="Grid active"                          }
  5514.       GridVisibleTex:           = {Typ="X" Txt="   ``"                          Cap="Show it on textured views too"        }
  5515.       CompassNumbers:           = {Typ="X" Txt="Compass"                        Cap="Display angle values"                 }
  5516.     //GrayOutOfView:            = {Typ="X" Txt="Model view mode"                  Cap="Gray out of view"                     }
  5517.     //HideOutOfView:            = {Typ="X" Txt="   ``"                          Cap="Hide out of view"                     }
  5518.     //Textured:                 = {Typ="X" Txt="   ``"                          Cap="Textured view"                        }
  5519.     //ViewModels:               = {Typ="X" Txt="Textured view"                  Cap="...include Models"                    }
  5520.       NoScrollBars:             = {Typ="X" Txt="Model view scroll"                Cap="Hide scroll bars"                     }
  5521.       CrossCursor:              = {Typ="X" Txt="Mouse cursor"                   Cap="Cross-like cursor"                    }
  5522.       HideMouseDrag:            = {Typ="X" Txt="   ``"                          Cap="Hidden while dragging"                }
  5523.       AutoAdjustNormal:         = {Typ="X" Txt="Polyhedron editing"             Cap="Quantize angles"                       }
  5524.       PagesLocked:              = {Typ="X" Txt="Multi-pages panel"              Cap="Locked"                               }
  5525.       HandleHints:              = {Typ="X" Txt="Hints (help rectangles)"        Cap="Hints for map handles"                }
  5526.     }
  5527.     MapBuilding:form =
  5528.     {
  5529.       Style = "7"
  5530.       AutoSave: = {
  5531.         Typ = "EF1"
  5532.         Txt = "Auto-Save every (minutes) :"
  5533.         Hint = "the map you are editing will be saved automatically each time this amount of minutes elasped (0=disabled)"
  5534.       }
  5535.       AutoSaveRun: = {
  5536.         Typ = "X"
  5537.         Txt = "Auto-Save"
  5538.         Cap = "before running game"
  5539.       }
  5540.       sep: = {Typ="S" Txt = ""}
  5541.       DefPoly: = {
  5542.         Typ     = "C"
  5543.         Txt     = "Default brush-entity size"
  5544.         Items   = ""
  5545.                $0D"128x128x128"
  5546.                $0D"96x96x96"
  5547.                $0D"64x64x64"
  5548.                $0D"48x48x48"
  5549.                $0D"32x32x32"
  5550.         Hint    = "Specify the X, Y and Z size of a cube, that will be used for"
  5551.                $0D"brush-entities. The format is '9999x9999x9999', and minimum size"
  5552.                $0D"is '8x8x8'."
  5553.       }
  5554.       WallWidth: = {
  5555.         Txt = "Wall width (for Make Hollow)"
  5556.         Typ = "EF1"    // Edit Float, 1 value
  5557.       }
  5558.       ForceAngleStep: = {
  5559.         Txt = "Force angle to (degrees)"
  5560.         Typ = "EF1"
  5561.         Min = '1'
  5562.         Max = '90'
  5563.       }
  5564.       //sep: = {Typ="S" Txt = ""}
  5565.       //BezierCenterX: = {
  5566.       //  Txt = "Bezier center offset (X)"
  5567.       //  Typ = "EF1"
  5568.       //  Min = '-64'
  5569.       //  Max = '64'
  5570.       //}
  5571.       //BezierCenterY: = {
  5572.       //  Txt = "Bezier center offset (Y)"
  5573.       //  Typ = "EF1"
  5574.       //  Min = '-64'
  5575.       //  Max = '64'
  5576.       //}
  5577.     }
  5578.     MdlBuilding:form =
  5579.     {
  5580.       Style = "7"
  5581.       ForceAngleStep: = {
  5582.         Txt = "Force angle to (degrees)"
  5583.         Typ = "EF1"
  5584.         Min = '1'
  5585.         Max = '90'
  5586.       }
  5587.     }
  5588.     Toolbars_TextureBrowser:form =
  5589.     {
  5590.       Style = "7"
  5591.       ImageListTextureDimension: = {
  5592.         Txt="Dimension of textures in texture-list"
  5593.         Hint="The bigger the dimension, more memory is needed, so make sure you don't overdo it."
  5594.           $0D"Only dimensions 32 to 128 in steps of 16 are allowed: 32, 48, 64, 80, 96, 112, 128."
  5595.         Typ="C"
  5596.         items  = "32  (32x32)"
  5597.               $0D"48  (48x48)"
  5598.               $0D"64  (64x64)"
  5599.               $0D"80  (80x80)"
  5600.               $0D"96  (96x96)"
  5601.               $0D"112  (112x112)"
  5602.               $0D"128  (128x128)"
  5603.         values = "32"
  5604.               $0D"48"
  5605.               $0D"64"
  5606.               $0D"80"
  5607.               $0D"96"
  5608.               $0D"112"
  5609.               $0D"128"
  5610.       }
  5611.       ImageListLoadNoOfTexAtEachCall: = {
  5612.         Txt="No. of textures to load per update"
  5613.         Hint="How many textures at a time QuArK should load, before updating the texture-browser screen."
  5614.           $0D"The higher the number, the less responsive QuArK will be, as it will not give control back"
  5615.           $0D"to the user, until the amount of textures have been loaded."$0D
  5616.           $0D"The best values are: 1 to 5"
  5617.         Typ="E"
  5618.       }
  5619.     }
  5620.   }
  5621.  
  5622.   Default forms.qctx =
  5623.   {
  5624.     Polyhedron:form =     // form on the polyhedrons page
  5625.     {
  5626.       Style = "1"
  5627.       header: = {
  5628.         Typ = "S"
  5629.         Txt = "%s"   // caption text is found in the object put in the form
  5630.         //Bold = "0"
  5631.       }
  5632.       faces: = {
  5633.         Typ = "E-R"      // edit, read only
  5634.         Txt = "Faces :"
  5635.         Hint = "The number of faces this polyhedron has|Number of faces"
  5636.       }
  5637.       center: = {
  5638.         Typ = "EF003"     // Edit Float, 3 values, Short (max. 2 decimals)
  5639.         Txt = "Center :"
  5640.         Hint = "The X, Y, Z coordinates of the center (you can enter other values to move the polyhedron)|Polyhedron center"
  5641.       }
  5642.       texture: = {
  5643.         Typ = "C"
  5644.         Txt = "Texture :"
  5645.         Items = "%s"   // items are found in the object put the form (texture$items)
  5646.           // texture$hint
  5647.         Hint = "%s||This box lets you see and change the name of the texture used on this or these polyhedrons. Wait with the mouse over the box to see the texture images."
  5648.       }
  5649.       ownedby: = {
  5650.         Typ = "E-R"
  5651.         Txt = "Owned by :"
  5652.         Hint = "The 'parent' (container) group or brush entity in the tree view||Click on the first button below to come back to the tree view; you will see the polyhedron inside a group. Every polyhedron is in a container, which can be the top-level 'worldspawn' entity, or a group or sub-group. Containers can be groups, used for map organization, or brush entities, i.e. entities with attached polyhedrons that make its shape, like doors and elevators."
  5653.       }
  5654.     }
  5655.     Face:form =     // form on the faces page
  5656.     {
  5657.       Style = "1"
  5658.       header: = {
  5659.         Typ = "S"
  5660.         Txt = "%s"   // caption text is found in the object put in the form
  5661.         //Bold = "0"
  5662.       }
  5663.       sharedby: = {
  5664.         Typ = "E-R"      // edit, read only
  5665.         Txt = "Used by :"
  5666.         Hint = "Press F1 for more information||Faces can be shared by multiple polyhedrons. Just like normal faces, shared faces have a texture and a supporting plane. The difference is that several polyhedrons may be delimited by this unique plane."$0D$0D"To make a shared face, go to the tree view and move a face outside its polyhedron into a group; then, all polyhedrons in the same group will be delimited by the face plane. Another, more intuitive way to use this feature is to select a group and cut it in two parts using the button 'cut polyhedrons and groups in two' above."
  5667.       }
  5668.       texture: = {
  5669.         Typ = "C"
  5670.         Txt = "Texture :"
  5671.         Items = "%s"   // items are found in the object put the form (texture$items)
  5672.         Hint = "%s||This box lets you see and change the name of the texture used on this or these faces. Wait with the mouse over the box to see the texture images."
  5673.       }
  5674.       origin: = {
  5675.         Typ = "EF003"     // Edit Float, 3 values, Short (max. 2 decimals)
  5676.         Txt = "Tex. origin:"
  5677.         Hint = "Texture origin point||This is the starting point of the texture mapping. Editing this will move the texture, but may also move the face if you enter a point outside the current plane."$0D$0D"Usually, you will use the mouse to move the cyan 'L' below instead."
  5678.       }
  5679.       scales: = {
  5680.         Typ = "EF002"     // Edit Float, 2 values, Short (max. 2 decimals)
  5681.         Txt = "Tex. scale:"
  5682.         Hint = "Scaling factors of the texture||The two scaling factors of the texture. They define how large the texture is, horizontally and vertically."$0D$0D"Usually, you will use the mouse to enlarge or shrink the cyan 'L' below instead."
  5683.       }
  5684.       angles: = {
  5685.         Typ = "EF02"
  5686.         Txt = "Tex. angles:"
  5687.         Hint = "Direction of texture axis||The angles of the direction of each texture axis, in degrees."$0D$0D"Usually, you will use the mouse to rotate the texture below instead."
  5688.       }
  5689.     }
  5690.     Bezier:form =     // form on the faces page
  5691.     {
  5692.       Style = "1"
  5693.       header: = {
  5694.         Typ = "S"
  5695.         Txt = "%s"   // caption text is found in the object put in the form
  5696.         //Bold = "0"
  5697.       }
  5698.       texture: = {
  5699.         Typ = "C"
  5700.         Txt = "Texture :"
  5701.         Items = "%s"   // items are found in the object put the form (texture$items)
  5702.         Hint = "%s||This box lets you see and change the name of the texture used on this or these faces. Wait with the mouse over the box to see the texture images."
  5703.       }
  5704.     }
  5705.     usercenterform:incl = {
  5706.       usercenter: = {Txt="&" Typ="EF03" Hint="Drag this with the handle"}
  5707.       centering: =
  5708.        {Txt= "&" Typ="P" Macro="usercenter" Cap="push" Hint="Push to add a user center"}
  5709.     }
  5710.     notexsubform:incl = {
  5711.        notexsub: = {Txt="&" Typ="X" Hint="Texture substitution in duplicators won't happen on this surface"}
  5712.     }
  5713.     dup plane:form = {
  5714.       P1:= {Txt="&" Typ="EF03"}
  5715.       P2:= {Txt="&" Typ="EF03"}
  5716.       P3:= {Txt="&" Typ="EF03"}
  5717.     }
  5718.     Default:f:form =
  5719.     {
  5720.       notexsubform=!
  5721.     }
  5722.     Default:b2:form =
  5723.     {
  5724.       notexsubform=!
  5725.     }
  5726.     Default:g:form =      // form that applies when editing groups
  5727.     {
  5728.       Style = "2"
  5729.       _color: = {Txt="Group color" Typ="L" Hint="color of the group on the map"}
  5730.       reset1: = {
  5731.         Txt = "   ``"
  5732.         Cap = "Reset to def."
  5733.         Typ = "B"
  5734.         Hint= "reset the group color to its default"
  5735.         Delete: = {
  5736.           _color = ""          // the button deletes this Specific
  5737.         }
  5738.       }
  5739.       usercenterform = !
  5740.       sep1:  = {Typ="S" Txt = ""}
  5741.       neg:   = {Txt="Neg. polys" Cap="Negative" Typ="X" Hint="polyhedrons in negative groups dig the map"}
  5742.       sep1:  = {Typ="S" Txt = ""}
  5743.       ;view: = {Txt="&" Typ="X01"  Cap="Grayed out"         Hint="the whole group is displayed grayed out"}
  5744.       ;view: = {Txt="&" Typ="X02"  Cap="Hidden"             Hint="the group is hidden from map views"}
  5745.       ;view: = {Txt="&" Typ="X08"  Cap="Hidden on textured" Hint="the group is hidden from textured views"}
  5746.       ;view: = {Txt="&" Typ="X016" Cap="Can't select"       Hint="can't select objects in this group with mouse clicks"}
  5747.       ;view: = {Txt="&" Typ="X04"  Cap="Ignore to build"    Hint="ignored while building the map"}
  5748.     }
  5749.     outform:incl = // include for dups with out
  5750.     {
  5751.       out: = {Txt="copy objects" Cap="outside" Typ="X" Hint="if checked, the duplicator or digger works with objects besides instead of only inside"}
  5752.     }
  5753.     serialform:incl = // include for dups that serialize target etc.
  5754.     {
  5755.       increment suffix: = {Txt="increment" Typ="X" Hint="If this is checked, target, targetname, killtarget values ending in a sequence of digits are incremented"}
  5756.       increment all target: ={Txt="incr. all targ." Typ="X" Hint="If this is checked, all specifics containing the word 'target' in their name are incremented"}
  5757.       incrementable specifics: = {Txt="incrementable" Typ="E" Hint="List here additional specifics to be incremented"}
  5758.       final_target = {Txt="&" Typ="E" Hint="Value of 'target' for last image, 'None' for no value" $0D " add 'final_killtarget' etc. for other incrementable specifics"$0D"for different final values associated with different bases,"$0D"list them base1:val base2:val2"}
  5759.       increment by = {Txt="&" Typ="E" Hint="size of increment" }
  5760.       incre_lip = {Txt="&" Typ="E" Hint="a custom increment for the specific 'lip'.  Make more on this model" $0D "Overrides 'increment by', and the specific is automatically made incrementable" }
  5761.       tex_sub = {Txt="&" Typ="E" Hint="Name of texture substitution file, which has a list of texturenames on each line, to be cycled thru" $0D " To block substitution on a face or patch, check the 'notexsub' specific."}
  5762.     }
  5763.     Default:d:form =    // form that applies when editing duplicators
  5764.     {
  5765.       out: = {Txt="copy objects" Cap="outside" Typ="X" Hint="if checked, the duplicator or digger works with objects besides instead of only inside"}
  5766.     }
  5767.  
  5768.     Default:p:form = // form for polys
  5769.     {
  5770.        neg: = {Txt="&" Typ="X" Hint="if checked, brush is negative"}
  5771.     }
  5772.     linearform:incl = {
  5773. //       scale: = {Txt="&" Typ="EF03"  Hint="X Y Z axis scaling" }
  5774. //       angles: = {Txt="&" Typ="E"  Hint="Pitch Roll Yaw Angles" $ 0D " (Rotation around Y X Z axes, in order)" }
  5775. //       matrix: = {Txt="&" Typ="E"  Hint="A matrix for an arbitrary linear transformation" $0D " (if you don't know what this is, use" $0D "scale & angles instead)."}
  5776.        linear: = {Txt="&" Typ="E"  Hint="A matrix for an arbitrary linear transformation" $0D " You probably don't want to edit this directly;" $0D " hit the 'Edit Linear' button below"}
  5777.        linedit: = {
  5778.          Txt="Edit Linear" Typ="P" Macro="linedit" Cap="push" Hint="Push to edit the matrix in the linear specific" $0D "  (Under Construction)"}
  5779.     }
  5780.  
  5781.     dup lin:form =
  5782.     {
  5783.       outform = !
  5784.       offset: = {Txt="&" Typ="E" Hint="Each instances is offset X Y Z units from previous one"}
  5785.       count: = {Txt="&" Typ="E" Hint="Number of instances generated"}
  5786.       offset dup: = {Txt="&" Typ="X" Hint="If this is checked, image is located at dup.origin-images center+offset" $0D " It's meant for New Copy One duplicator"}
  5787.       item center: = {Txt="&" Typ="X" Hint="If this is checked, if there is a 'linear' specific, each item in the" $0D " group is rotated around its own center (can be" $0D " usercenter) rather than the duplicator."}
  5788.       linearform = !
  5789.       serialform = !
  5790.     }
  5791.     dup symx:form =
  5792.     {
  5793.       serialform = !
  5794.     }
  5795.     dup symy:form =
  5796.     {
  5797.       serialform = !
  5798.     }
  5799.     dup symz:form =
  5800.     {
  5801.       serialform = !
  5802.     }
  5803.     dup symxyz:form =
  5804.     {
  5805.       x: = { txt="&" typ="X" cap="Flip X-axis" }
  5806.       y: = { txt="&" typ="X" cap="Flip Y-axis" }
  5807.       z: = { txt="&" typ="X" cap="Flip Z-axis" }
  5808.       serialform = !
  5809.     }
  5810.     dup basic:form =
  5811.     {
  5812.       outform = !
  5813.       offset: = {Txt="&" Typ="E" Hint="Each instances is offset X Y Z units from previous one"}
  5814.       count: = {Txt="&" Typ="E" Hint="Number of instances generated"}
  5815.       angle: = {Txt="&" Typ="E" Hint="Rotates the duplicated object by"$0D"that amount in degrees from its center"$0D"creating a circular pattern"$0D"A positive number for counterclockwise,"$0D"A negative number for clockwise"}
  5816.       serialform = !
  5817.     }
  5818.  
  5819.     dup radial:form =
  5820.     {
  5821.       Help = "Brushes placed inside this will be replicated around the axis," $0D " which can be tilted."
  5822.       count: = {Txt = "&" Hint = "Number of copies"}
  5823.       around: = {Txt = "&" Typ = "EF1"
  5824.                  Hint = "Degrees around axis for each copy"}
  5825.       spiral: = {Txt = "&" Typ = "EF2"
  5826.                  Hint = "displacement along and out from axis, per copy"}
  5827.       axis: = {Txt = "&" Typ = "EF3"
  5828.                 Hint = "axis for copies"}
  5829. //      buttons: = {
  5830. //        Txt = "align"
  5831. //        Typ = "PM"
  5832. //        Num = "3"
  5833. //        Macro = "dup_radial_align"
  5834. //        Caps = "XYZ"
  5835. //        Hint1 = "Align to X Axis"
  5836. //        Hint2 = "Align to Y Axis"
  5837. //        Hint3 = "Align to Z Axis"
  5838. //      }
  5839.       linearform = !
  5840.       macro: = {Txt = "&" Typ = "ESR"
  5841.                  Hint = "Don't you worry about this"}
  5842.     }
  5843.  
  5844.     capdetails:form =
  5845.     {
  5846.       faceonly:  = {Txt="&" Typ="X" Hint="if checked, only the top and bottom faces are produced, no inner curve"}
  5847.       nofront    = {Txt="&" Typ="X" Hint="if checked, front face is not produced"}
  5848.       noback:    = {Txt="&" Typ="X" Hint="if checked, back face is not produced"}
  5849.       noinner    = {Txt="&" Typ="X" Hint="if checked, inner face is not produced (thick bevels only)"}
  5850.       noouter:   = {Txt="&" Typ="X" Hint="if checked, outer face is not produced (thick bevels only)"}
  5851.       leftside:  = {Txt="&" Typ="X" Hint="if checked, left side is produced"}
  5852.       rightside: = {Txt="&" Typ="X" Hint="if checked, right side is produced"}
  5853.     }
  5854.     subdivideform:incl =
  5855.     {
  5856.       subdivide:  = {Txt="&" Typ="EF1"  Hint="integer value, generate 2^n+1 control points along the curve"$0D"  (Gives better approx to circle, but beware of R-speeds, also big patches might not show in Q3)"}
  5857.     }
  5858.     brushsubdivideform:incl =
  5859.     {
  5860.       subdivide:  = {Txt="&" Typ="EF1"  Hint="integer value, generate 2^n brushes along the curve"$0D"  (Gives better approx to circle, but beware of R-speeds ...)"}
  5861.     }
  5862.     dup cap:form =
  5863.     {
  5864.       inverse:    = {Txt="&" Typ="X"    Hint="if checked, concave surface of curve is outer and has texture"}
  5865.       lower:      = {Txt="&" Typ="X"    Hint="if checked, the whole thing is upside-down"}
  5866.       onside:     = {Txt="&" Typ="X"    Hint="if checked, curve goes front-to-back instead of top-to-bottom "}
  5867.       thick:      = {Txt="&" Typ="EF1"  Hint="if a nonzero value is given, an enclosed curve with thickness is produced"}
  5868.       subdivideform = !
  5869.       stretchtex: = {Txt="&" Typ="X"    Hint="if checked, texture on top/bottom is stretched to cover entire curved face." $0D "Otherwise complex things are done to make it easier to align the curve's texture with the sides."}
  5870.       open:       = {Txt="&" Typ="X"    Hint="if checked, front and back are open"}
  5871.       more: = {
  5872.         Typ="B"
  5873.         Txt="details"
  5874.         Cap="Push"
  5875.         Form="capdetails:form"
  5876.         Hint="specifics for more detailed control over generation of patches"
  5877.       }
  5878.       macro: = {Txt="&" Typ="ESR" Hint="This one is not for you, Saruman"}
  5879.     }
  5880.     beveldetails:form =
  5881.     {
  5882.       faceonly: = {Txt="&" Typ="X" Hint="if checked, only the top and bottom faces are produced, no inner curve"}
  5883.       notop     = {Txt="&" Typ="X" Hint="if checked, top face is not produced"}
  5884.       nobottom: = {Txt="&" Typ="X" Hint="if checked, bottom face is not produced"}
  5885.       noinner   = {Txt="&" Typ="X" Hint="if checked, inner face is not produced (thick bevels only)"}
  5886.       noouter:  = {Txt="&" Typ="X" Hint="if checked, outer face is not produced (thick bevels only)"}
  5887.       leftend:  = {Txt="&" Typ="X" Hint="if checked, left end is produced"}
  5888.       rightend: = {Txt="&" Typ="X" Hint="if checked, right end is produced"}
  5889.     }
  5890.     dup bevel:form =
  5891.     {
  5892.       inverse:    = {Txt="&" Typ="X"    Hint="if checked, concave surface of curve is outer and has texture"}
  5893.       lower:      = {Txt="&" Typ="X"    Hint="if checked, the whole thing is upside-down"}
  5894.       standup:    = {Txt="&" Typ="X"    Hint="if checked, curve goes top-to-bottom instead of front-to-back"}
  5895.       left:       = {Txt="&" Typ="X"    Hint="if checked, curve goes from back to left side rather than back to right side"}
  5896.       thick:      = {Txt="&" Typ="EF1"  Hint="if a nonzero value is given, an enclosed curve with thickness is produced"}
  5897.       subdivideform = !
  5898.       stretchtex: = {Txt="&" Typ="X"    Hint="if checked, texture on back is stretched to cover entire curved face." $0D "Otherwise complex things are done to make it easier to align the curve's texture with the sides."}
  5899.       open:       = {Txt="&" Typ="X"    Hint="if checked, top and bottom are open"}
  5900.       more: = {
  5901.         Typ="B"
  5902.         Txt="details"
  5903.         Cap="Push"
  5904.         Form="beveldetails:form"
  5905.         Hint="specifics for more detailed control over generation of patches"
  5906.       }
  5907.       macro: = {Txt="&" Typ="ESR" Hint = "This one is not for you, Saruman"}
  5908.     }
  5909.     dup column:form =
  5910.     {
  5911.       inverse:    = {Txt="&" Typ="X"     Hint="if checked, concave surface of curve is outer and has texture"}
  5912.       thick:      = {Txt="&" Typ="EF1"   Hint="if a nonzero value is given, an enclosed curve with thickness is produced"}
  5913.       subdivideform = !
  5914.       circle:     = {Txt="&" Typ="X" }
  5915.       stretchtex: = {Txt="&" Typ="X"     Hint="if checked, texture on back is stretched to cover entire column." $0D "Otherwise complex things are done so that if" $0D "the the texture on the back face is wrapped around the brush," $0D "this wrapping will also appear aroudn the column"}
  5916.       open:       = {Txt="&" Typ="X"     Hint="if checked, top and bottom are open"}
  5917.       funnel:     = {Txt="&" Typ="EF002" Hint="if specified, first number is expand factor for top, second for bottom."$0D"e.g. 0 1 for upward pointing cone"}
  5918.       bulge:      = {Txt="&" Typ="EF002" Hint="height, width of bulge, proportional, .5 1=straight"}
  5919.       more: = {
  5920.         Typ="B"
  5921.         Txt="details"
  5922.         Cap="Push"
  5923.         Form="beveldetails:form"
  5924.         Hint="specifics for more detailed control over generation of patches"
  5925.       }
  5926.       macro: = {Txt="&" Typ="ESR" Hint="This one is not for you, Saruman"}
  5927.     }
  5928.     dup brushcap:form =
  5929.     {
  5930.       inverse:   = {Txt="&" Typ="X"   Hint="if checked, concave surface of curve is outer and has texture"}
  5931.       lower:     = {Txt="&" Typ="X"   Hint="if checked, the whole thing is upside-down"}
  5932.       onside:    = {Txt="&" Typ="X"   Hint="if checked, curve goes front-to-back instead of top-to-bottom "}
  5933.       thick:     = {Txt="&" Typ="EF1" Hint="if a nonzero value is given, an enclosed curve with thickness is produced"}
  5934.       inner:     = {Txt="&" Typ="X"   Hint="if checked, inner approximation is used; otherwise outer"}
  5935.       grid:      = {Txt="&" Typ="X"   Hint="if checked, vertex points are forced to grid"}
  5936.       brushsubdivideform = !
  5937.       macro:     = {Txt="&" Typ="ESR" Hint="This one is not for you, Saruman"}
  5938.     }
  5939.     dup brushbevel:form =
  5940.     {
  5941.       inverse:   = {Txt="&" Typ="X"   Hint="if checked, concave surface of curve is outer and has texture"}
  5942.       left:      = {Txt="&" Typ="X"   Hint="if checked, curve goes from back to left side rather than back to right side"}
  5943.       lower:     = {Txt="&" Typ="X"   Hint="if checked, the whole thing is upside-down"}
  5944.       standup:   = {Txt="&" Typ="X"   Hint="if checked, curve goes top-to-bottom instead of front-to-back"}
  5945.       thick:     = {Txt="&" Typ="EF1" Hint="if a nonzero value is given, an enclosed curve with thickness is produced"}
  5946.       inner:     = {Txt="&" Typ="X"   Hint="if checked, inner approximation is used; otherwise outer"}
  5947.       grid:      = {Txt="&" Typ="X"   Hint="if checked, vertex points are forced to grid"}
  5948.       brushsubdivideform = !
  5949.       macro:     = {Txt="&" Typ="ESR" Hint="This one is not for you, Saruman"}
  5950.     }
  5951.     dup brushcolumn:form =
  5952.     {
  5953.       inverse:   = {Txt="&" Typ="X"     Hint="if checked, concave surface of curve is outer and has texture"}
  5954.       brushsubdivideform = !
  5955.       circle:    = {Txt="&" Typ="X" }
  5956.       funnel:    = {Txt="&" Typ="EF002" Hint="if specified, first number is expand factor for top, second for bottom."$0D"e.g. 0 1 for upward pointing cone"}
  5957.       bulge:     = {Txt="&" Typ="EF002" Hint="height, width of bulge, proportional, .5 1=straight"}
  5958.       macro:     = {Txt="&" Typ="ESR"   Hint="This one is not for you, Saruman"}
  5959.     }
  5960.     dup path:form =
  5961.     {
  5962.       target: = {Txt="&" Typ="E"     Hint="should be managed automatically"}
  5963.       squarend: = {Txt="&" Typ="X"     Hint="if checked, path segments have squared, disconnnected ends, rather than joining at `elbows'"}
  5964.       setback:  = {Txt="&" Typ="EF001" Hint="if squarend is checked, this specifies how far back the segment ends are pulled" $0D "back from elbow-joins"}
  5965.       level: = {Txt="&" Typ="X"     Hint="if checked, rotation on two axes won't twist a segment, but also they won't join smoothly."}
  5966.       elbows: =
  5967.        {Txt= "&" Typ="P" Macro="instances" Cap="push" Hint="Push to add an elbow duplicator"}
  5968.     }
  5969.     dup path_point:form =
  5970.     {
  5971.       level: = {Txt="&" Typ="X"      Hint="if checked, following path segment doesn't rotate (may cause non-fitting joins)"}
  5972.       target: = {Txt="&" Typ="E"     Hint="should be managed automatically"}
  5973.       targetname: = {Txt="&" Typ="E" Hint="should be managed automatically"}
  5974. //      linearform = !
  5975.       no instance: = {Txt="&" Typ="X"      Hint="if checked, no instance is generated (instance dup only)"}
  5976.     }
  5977.     dup instance:form =
  5978.     {
  5979.       level: = {Txt="&" Typ="X"     Hint="if checked, rotation on two axes won't twist a segment."}
  5980.       track: =  {Txt="&" Typ="X" Hint="If checked, instances rotate to follow path angles"}
  5981.       target: = {Txt="&" Typ="E" Hint="should be managed automatically"}
  5982.       usercenterform = !
  5983.     }
  5984.     dup terrain2:form =
  5985.     {
  5986.       wedgeunits:      = {Txt="&"            Hint="number of units per 'block' of wedges in the terrain surface"}
  5987.       sameheight: = {Txt="&" Typ="X"    Hint="if wedge heights should be the same (down face moves) = checked"$0D"or all down faces remain aligned to the bottom = unchecked"}
  5988.       detailmesh: =   {Txt="&" Typ="X"    Hint="if this is checked, smaller wedges can be used for detail terrains."$0D""$0D"Not recommended for large areas due to large brush count."$0D"Which can slow the editor way down or seem to cause lockup."}
  5989.       macro:      = {Txt="&" Typ="ESR"  Hint="This one is not for you, Saruman"}
  5990.     }
  5991.     dup terrain2X:form =
  5992.     {
  5993.       wedgeunits:      = {Txt="&"            Hint="number of units per 'block' of wedges in the terrain surface"}
  5994.       sameheight: = {Txt="&" Typ="X"    Hint="if wedge heights should be the same (down face moves) = checked"$0D"or all down faces remain aligned to the bottom = unchecked"}
  5995.       detailmesh: =   {Txt="&" Typ="X"    Hint="if this is checked, smaller wedges can be used for detail terrains."$0D""$0D"Not recommended for large areas due to large brush count."$0D"Which can slow the editor way down or seem to cause lockup."}
  5996.       macro:      = {Txt="&" Typ="ESR"  Hint="This one is not for you, Saruman"}
  5997.     }
  5998.     dup terrain4:form =
  5999.     {
  6000.       wedgeunits:      = {Txt="&"            Hint="number of units per 'block' of wedges in the terrain surface"}
  6001.       sameheight: = {Txt="&" Typ="X"    Hint="if wedge heights should be the same (down face moves) = checked"$0D"or all down faces remain aligned to the bottom = unchecked"}
  6002.       detailmesh: =   {Txt="&" Typ="X"    Hint="if this is checked, smaller wedges can be used for detail terrains."$0D""$0D"Not recommended for large areas due to large brush count."$0D"Which can slow the editor way down or seem to cause lockup."}
  6003.       macro:      = {Txt="&" Typ="ESR"  Hint="This one is not for you, Saruman"}
  6004.     }
  6005.     dup stair:form =
  6006.     {
  6007.       steps:      = {Txt="&"            Hint="number of steps in the staircase"}
  6008.       sameheight: = {Txt="&" Typ="X"    Hint="if all steps should have the same height"$0D"or all aligned to the bottom"}
  6009.       oldstyle: =   {Txt="&" Typ="X"    Hint="||if this is checked, then old-style column-stair is generated."$0D"Not recommended, due to overdraw and t-juncts"$0D""$0D"Credits to foo, quakin, plan b and other quake3world editing forum stalwarts."}
  6010.       macro:      = {Txt="&" Typ="ESR"  Hint="This one is not for you, Saruman"}
  6011.     }
  6012.     dup hlinfodecal:form =
  6013.     {
  6014.       Help = "Type your word(s) into the 'text'-specific,"$0D"check that the texture-names exist."
  6015.       text:        = {Txt="&"           Hint="The text to be converted into infodecals" }
  6016.       wildchar:    = {Txt="&"           Hint="A single character in the texture-names, thats replaced by a character from the text-string" }
  6017.       tex_upper:   = {Txt="&" Typ="ET"  Hint="Texture-name of uppercase characters."$0D"Put the 'wildchar'-character in position where it should be replaced by a character from the text-string" }
  6018.       tex_lower:   = {Txt="&" Typ="ET"  Hint="Texture-name of lowercase characters."$0D"Put the 'wildchar'-character in position where it should be replaced by a character from the text-string" }
  6019.       tex_numeric: = {Txt="&" Typ="ET"  Hint="Texture-name of numeric characters."$0D"Put the 'wildchar'-character in position where it should be replaced by a character from the text-string" }
  6020.       macro:       = {Txt="&" Typ="ESR" Hint="This one is not for you, Saruman"}
  6021.     }
  6022.     dup hlradfilemaker:form =
  6023.     {
  6024.       Help = "Set the specific-key to texturename and the arg to RGBV, like this:"
  6025.           $0D"  ~LIGHT5B      255 255 0 300"
  6026.           $0D"  SPOTLIGHT     0 128 255 800"
  6027.        $0D$0D"Or use the 'texture' and 'lighting' specifics-interface;"
  6028.           $0D"Push the [...] to select texture, and push to choose color (remember to"
  6029.           $0D"append the brightness value). Then press the [Apply] button."
  6030.       macro:    = {Typ="ESR" Hint="This one is not for you, Saruman"}
  6031.       filename: = {Typ="C"   Hint="Choose or type the filename" Items="<mapname>.RAD"$0D"LIGHTS.RAD" Values=""$0D"LIGHTS.RAD"}
  6032.       texture:  = {Typ="ET"  Hint="Choose texture. Push the [...] to open the texture-browser."}
  6033.       lighting: = {          Hint="4 values: <Red 0-255> <Green 0-255> <Blue 0-255> <Brightness>"}
  6034.       lighting: = {Typ="L 4" Hint="Choose color. Push to open the color-picker dialog."}
  6035.       apply:    = {Typ="P" Cap="Apply" Txt=" " Macro="hlradfilemaker_apply" Hint="Push to apply the 'texture' and 'lighting' values to the list."}
  6036.     }
  6037.  
  6038.     wall maker:form = {
  6039.       miter: =
  6040.       {
  6041.          Txt="&"
  6042.          Typ="X"
  6043.          Hint="If this is checked, corners will be mitered" $0D " outsides of shapes may need touching up"
  6044.       }
  6045.       extrude: =
  6046.       {
  6047.          Txt="&"
  6048.          Typ="X"
  6049.          Hint="If this is checked, walls will be extruded, but corners will not be mitered;" $0D$ " reshaping will be faster, but corners may have texturing faults and other problems." $0D "If neither this nor mitered is checked,negative polys will be used;" $0D " it is best to avoid them."
  6050.       }
  6051.      solid: =
  6052.       {
  6053.          Txt="&"
  6054.          Typ="X"
  6055.          Hint="If this is checked, brushes are made solid, no wall made." $0D " (simpler processing for quicker editing)"
  6056.       }
  6057.       depth: =
  6058.       {
  6059.          Txt="thickness"
  6060.          Typ="E"
  6061.          Hint="thickness of walls"
  6062.       }
  6063.       caulkhull:=
  6064.       {
  6065.          Txt="caulkhull"
  6066.          Typ="E"
  6067.          Hint="thickness of caulk hull walls"
  6068.       }
  6069.       caulksetback:=
  6070.       {
  6071.          Txt="caulksetback"
  6072.          Typ="E"
  6073.          Hint="distance caulk hull is set back from detail." $0D " should be empty except for special effects"
  6074.       }
  6075.     }
  6076.  
  6077.     dup extruder:form = {
  6078.       tex: =
  6079.       {
  6080.         Txt = "texture"
  6081.         Typ = "ET"      // Edit Texture
  6082.         Hint = "Select the texture you want,"
  6083.             $0D"otherwise the Default texture will be used."
  6084.       }
  6085.       type: =
  6086.       {
  6087.         Txt="&"
  6088.         Typ="CL"
  6089.         Items="hollow"  $0D "solid" $0D "autobox" $0D "patches"
  6090.         Values="t" $0D "b" $0D "ab" $ 0D "p"
  6091.       }
  6092.       edge: =
  6093.       {
  6094.         Txt="&"
  6095.         Typ="EF1"
  6096.         Hint="length of patch-connecting edge in pipe mode"
  6097.       }
  6098.       inverse: =
  6099.       {
  6100.         Txt="&"
  6101.         Typ="X"
  6102.         Hint="If checked, texture shown on outside rather than inside." $0D "  Only meaningful for patch type."
  6103.       }
  6104.       open: =
  6105.       {
  6106.         Txt="&"
  6107.         Typ="X"
  6108.         Hint="If checked, open line rather than closed loop." $0D "  Only meaningful for patch and pipe types."
  6109.       }
  6110.       short: =
  6111.       {
  6112.         Txt="&"
  6113.         Typ="X"
  6114.         Hint="If checked, only the first segment is generated" $0D " (speeds up editing of complex shapes)"
  6115.       }
  6116.  
  6117.  
  6118. //      texture specs: =
  6119. //      {
  6120. //        Typ="B"
  6121. //        Txt="texture"
  6122. //        Cap="Push"
  6123. //        Form="corridor texture:form"
  6124. //        Hint="Texturing specifics"
  6125. //      }
  6126. //      auxiliary specs: =
  6127. //      {
  6128. //        Typ="B"
  6129. //        Txt="auxiliary"
  6130. //        Cap="Push"
  6131. //        Form="corridor auxiliary:form"
  6132. //        Hint="Some extra specs for special functions."
  6133. //      }
  6134.     }
  6135.  
  6136.     arg replacer:form = {
  6137.         Help =  "Put your point-entities and brush-entities under this Arg Replacer,"
  6138.              $0D"you can make groups in groups just like normal, if you want to."
  6139.           $0D$0D"In the spec/arg view of the Arg Replacer, insert keywords you want to be"
  6140.              $0D"replaced with keydata. Something like this:"
  6141.           $0D$0D"  prefix         grp1"
  6142.              $0D"  mylight       400"
  6143.           $0D$0D"and in the entities specs/args that should be replaced with the keydata, do this:"
  6144.           $0D$0D"  targetname     %prefix%_A"
  6145.              $0D"  _light              255 255 255 %mylight%"
  6146.           $0D$0D"Be aware that everything is case-sensitive! 'prefix' is not equal to 'PREFIX'."
  6147.     }
  6148.  
  6149.     QuakeCtx:form =     // form that applies when editing .qctx objects
  6150.     {
  6151.       Style = "3"
  6152.       info: = {Typ="S" Txt=" ---- Description of the game or TC ----"}
  6153.       Game: = {
  6154.         Txt = "Based on game"
  6155.         Typ = "CL"
  6156.         Items = "Quake 1"$0D"Quake 2"$0D"Hexen II"$0D"Heretic II"$0D"Half-Life"$0D"Sin"$0D"KingPin"$0D"SOF"$0D"Quake 3"$0D"STVEF"$0D"Crystal Space"$0D"RTCW"$0D"MOHAA"$0D"JK2"$0D"SoF2"$0D"Doom 3"
  6157.         Hint = "the game this TC is based on"
  6158.       }
  6159.       SourceDir: = {
  6160.         Txt = "Source directory"
  6161.         Typ = "EDL" // "EDL" = Editfield-Directorypath-Lastfolderonly
  6162.         Hint = "QuArK will look there for files like textures, 3D models, etc. Must be the name of a subdirectory directly the game path"
  6163.       }
  6164.       GameDir: = {
  6165.         Txt = "Game directory"
  6166.         Typ = "EDL" // "EDL" = Editfield-Directorypath-Lastfolderonly
  6167.         Hint = "QuArK will run the game with this as '-game' or '+set game' command-line parameter"
  6168.       }
  6169.       GetEntitiesBtn: =
  6170.       {
  6171.         Typ = "P"
  6172.         Cap = "Get entities for this game"
  6173.         Macro = "makeaddon"
  6174.       }
  6175.       GetTexturesBtn: =
  6176.       {
  6177.         Typ = "P"
  6178.         Cap = "Get textures for this game"
  6179.         Macro = "makeaddon_tex"
  6180.       }
  6181.     }
  6182.     FormContext:form =
  6183.     {
  6184.       info: = {Typ="S" Txt=" ---- Entity forms ----"}
  6185.       Style = "3"
  6186.     }
  6187.     FormCFG:form =
  6188.     {
  6189.       info1: = {Typ="S" Txt=" ---- General form options ----"}
  6190.       Style = "1"
  6191.       Style: = {
  6192.         Txt = "Style"
  6193.         Typ = "E"
  6194.         Hint = "The forms style"
  6195.       }
  6196.       Help: = {
  6197.         Txt = "Help"
  6198.         Typ = "E"
  6199.         Hint = "The forms help text"
  6200.       }
  6201.       HTML: = {
  6202.         Txt = "HTML Link"
  6203.         Typ = "E"
  6204.         Hint = "The forms help file"
  6205.       }
  6206.       info2: = {Typ="S" Txt=" ---- Point entity specific ----"}
  6207.       bbox: = {
  6208.         Txt = "Bounding Box"
  6209.         Typ = "EF7"
  6210.         Hint = "The entities bounding box"
  6211.       }
  6212.       mdl: = {
  6213.         Txt = "Model"
  6214.         Typ = "E"
  6215.         Hint = "Model to use in 3D view"
  6216.       }
  6217.       mdlbase: = {
  6218.         Txt = "Model Base"
  6219.         Typ = "E"
  6220.         Hint = "Model base path (can be blank)"
  6221.       }
  6222.       mdlframe: = {
  6223.         Txt = "Model Frame"
  6224.         Typ = "E"
  6225.         Hint = "Frame to use for model"
  6226.       }
  6227.       mdlskin: = {
  6228.         Txt = "Model Skin"
  6229.         Typ = "E"
  6230.         Hint = "Skin to use for model"
  6231.       }
  6232.       info3: = {Typ="S" Txt=" ---- Brush entity specific ----"}
  6233.       info4: = {Typ="S" Txt="(none yet)"}
  6234.     }
  6235.     SpecArgForm:form =
  6236.     {
  6237.       info1: = {Typ="S" Txt=" ---- Specific / Argument options ----"}
  6238.       Style = "1"
  6239.       Typ: = {
  6240.         Txt = "Type"
  6241.         Typ = "C"
  6242.         Hint =  "The specifics type:"$0D
  6243.                 "E = Edit"$0D
  6244.                 "E R = Edit - Read Only"$0D
  6245.                 "EF = Edit - Number/Floating Point"$0D
  6246.                 "ED = Edit - Directory"$0D
  6247.                 "ET = Edit - Texture"$0D
  6248.                 "EP = Edit - File"$0D
  6249.                 "EN = Edit - Name"$0D
  6250.                 "EU = Edit - Up/Down Button"$0D
  6251.                 "EQ = Edit - Up/Down/Left/Right Button"$0D
  6252.                 "X  = Checkbox"$0D
  6253.                 "B  = Button"$0D
  6254.                 "P  = Python Button"$0D
  6255.                 "PM = Python Button (Multiple)"$0D
  6256.                 "C  = Combobox"$0D
  6257.                 "S  = Seperator"$0D
  6258.                 "L  = Color"$0D
  6259.                 "LP = Color - Palletized"$0D
  6260.                 "LN = Color - Normalized"$0D
  6261.                 "I  = Image"$0D
  6262.                 "F  = Font"$0D
  6263.                 "K  = Key"
  6264.         Items =   "E"$0D
  6265.                   "ER"$0D
  6266.                   "EF"$0D
  6267.                   "ED"$0D
  6268.                   "ET"$0D
  6269.                   "EP"$0D
  6270.                   "EN"$0D
  6271.                   "EU"$0D
  6272.                   "EQ"$0D
  6273.                   "X"$0D
  6274.                   "B"$0D
  6275.                   "P"$0D
  6276.                   "PM"$0D
  6277.                   "C"$0D
  6278.                   "S"$0D
  6279.                   "L"$0D
  6280.                   "LP"$0D
  6281.                   "LN"$0D
  6282.                   "I"$0D
  6283.                   "F"$0D
  6284.                   "K"
  6285.       }
  6286.       Txt: = {
  6287.         Txt = "Text"
  6288.         Typ = "E"
  6289.         Hint = "The specifics caption"
  6290.       }
  6291.       Hint: = {
  6292.         Txt = "Hint"
  6293.         Typ = "E"
  6294.         Hint = "The specifics help text"
  6295.       }
  6296.       info2: = {Typ="S" Txt=" ---- Combobox (C) specific ----"}
  6297.       Items: = {
  6298.         Txt = "Items"
  6299.         Typ = "E"
  6300.         Hint = "Items in combobox - seperated by $0D"
  6301.       }
  6302.       Values: = {
  6303.         Txt = "Values"
  6304.         Typ = "E"
  6305.         Hint = "Values for items - seperated by $0D"
  6306.       }
  6307.       info2: = {Typ="S" Txt=" ---- Button (B) specific ----"}
  6308.       Form: = {
  6309.         Txt = "Form"
  6310.         Typ = "E"
  6311.         Hint = "Form to open when button is pressed"
  6312.       }
  6313.       info3: = {Typ="S" Txt=" ---- Python Macro Button (P) specific ----"}
  6314.       Macro: = {
  6315.         Txt = "Macro"
  6316.         Typ = "E"
  6317.         Hint = "Macro to call when pressed"
  6318.       }
  6319.       info4: = {Typ="S" Txt=" ---- Python Macro Button (PM) specific ----"}
  6320.       Num: = {
  6321.         Txt = "Count"
  6322.         Typ = "E"
  6323.         Hint = "Number of buttons - Use if 'M' is second character of type"
  6324.       }
  6325.       Caps: = {
  6326.         Txt = "Captions"
  6327.         Typ = "E"
  6328.         Hint = "Caption of button, one character per button - Use if 'M' is second character of type"
  6329.       }
  6330.       Macro: = {
  6331.         Txt = "Macro"
  6332.         Typ = "E"
  6333.         Hint = "Macro to call when pressed"
  6334.       }
  6335.       Hint1: = {
  6336.         Txt = "Hint"
  6337.         Typ = "E"
  6338.         Hint = "Hint for button 1 (add more if necessary - Hint2....Hintx)"
  6339.       }
  6340.       info5: = {Typ="S" Txt=" ---- Checkbox (X) specific ----"}
  6341.       Cap: = {
  6342.         Txt = "Caption"
  6343.         Typ = "E"
  6344.         Hint = "Caption of checkbox"
  6345.       }
  6346.     }
  6347.     ToolBox:form =      // form that applies when editing .qtx objects
  6348.     {
  6349.       Style = "3"
  6350.       info: = {Typ="S" Txt=" ---- Toolbox root object ----"}
  6351.       ToolBox: = {
  6352.         Txt = "Toolbox name"
  6353.         Typ = "E"
  6354.         Hint = "data in this object appears in this toolbox"
  6355.       }
  6356.       sep1: = {Typ="S"}
  6357.       info2: = {Typ="S" Txt="Optional window settings"}
  6358.       pos: = {
  6359.         Typ = "EF4"
  6360.         Txt = "Initial window position"
  6361.         Hint = "only applies the first time the toolbox is opened"
  6362.       }
  6363.       left: = {
  6364.         Typ = "EF1"
  6365.         Txt = "Width of left pane, if any"
  6366.         Hint = "width of the Explorer-like left panel for toolboxes like the texture browser"
  6367.       }
  6368.       color: = {
  6369.         Typ = "LI"
  6370.         Txt = "caption color"
  6371.         Hint = "rightmost gradient caption color (leftmost color is always black for toolboxes)"
  6372.       }
  6373.       sep2: = {Typ="S" Txt = ""}
  6374.       info3: = {Typ="S" Txt="Open the toolbox to edit the content."}
  6375.       root: = {Typ="!"}  // prevents "root" from being displayed at all
  6376.       target: = {Typ="!"}
  6377.     }
  6378.     QrkGroup:form =
  6379.     {
  6380.       Style = "3"
  6381.       caption: = {Typ="E" Txt="Group caption"}
  6382.       btn:py = {
  6383.           macro = "hello"
  6384.       }
  6385.     }
  6386.  
  6387.         CustomBuildPgm:incl = {
  6388.                 Typ="X"
  6389.                 Txt="...execute build-program"
  6390.                 Cap="Yes"
  6391.                 Hint="Make this build-program execute, after the above ones,"
  6392.                   $0D"only if no error have occured in previous build-program."
  6393.                   $0D
  6394.                   $0D"In the game's configuration section (QuArK Explorer->Games->"
  6395.                   $0D"Options), you specify what this build-program is."
  6396.         }
  6397.         CustomBuildArgs:incl = {
  6398.                 Typ="C"
  6399.                 Txt="...additional arguments"
  6400.                 Hint="Put any additional command-line arguments for the"
  6401.                   $0D"build-program here. They will be _additional_ to the"
  6402.                   $0D"fixed arguments, which are specified in the game's"
  6403.                   $0D"configuration section (QuArK Explorer->Games->Options)."
  6404.                   $0D
  6405.                   $0D"Use the following user-variables, which will be automatically"
  6406.                   $0D"replaced at run-time. If at least one of these are used, QuArK"
  6407.                   $0D"will _not_ append a '<path>/<mapfile>' to the command-line arg.,"
  6408.                   $0D"so you better remember to do this yourself."
  6409.                   $0D
  6410.                   $0D"%file%    - Gives the map's path and filename without extension"
  6411.                   $0D"%mappath% - Gives the map's path with ending backslash"
  6412.                   $0D"%mapfile% - Gives the map's path and filename with .MAP extension"
  6413.                   $0D
  6414.                   $0D"Examples:"
  6415.                   $0D"  BSPC.EXE -bps2aas %file%.BSP -output %mappath%"
  6416.                   $0D"  VIS.EXE -fast %file%"
  6417.                   $0D"  QRAD3.EXE -threads 4 %file%"
  6418.         }
  6419.  
  6420.     CustomQuakeMenu:form =    // "customize Quake menu" box
  6421.     {
  6422.       Style = "5" // No-icons, No-extra-spacing
  6423.  
  6424.       sep:           = {Typ="S" Txt="---- Menu Item / Output ----"}
  6425.       Shortcut:      = {Typ="E" Txt="Keyboard shortcut" Hint="Keyboard shortcut as it appears in the menu (recommended: 'Ctrl+letter')"}
  6426.       Pause:         = {Typ="X" Txt="When build has finished..." Cap="Console stay open" Hint="Don't automatically close the console where all build-program's output has been written"}
  6427.       sep:           = {Typ="S" Txt = ""}
  6428.       sep:           = {Typ="S" Txt="---- Before build / After build ----"}
  6429.       ExportMapFile: = {Typ="X" Txt="First..."                  Cap="Export new .MAP file"    Hint=""}
  6430.       Textures:      = {Typ="X" Txt="Then..."                   Cap="Prepare used textures"   Hint="Prepare all textures used in map and write"$0D"them to a place where the build-programs will find them"}
  6431.       RunGame:       = {Typ="X" Txt="After successful build..." Cap[]="Run [::Game] with map" Hint="Run the game when the map has been rebuilt"}
  6432.       sep:           = {Typ="S" Txt = ""}
  6433.       sep:           = {Typ="S" Txt="---- Build Programs Enable/Disable Sequence ----"}
  6434.       sep:           = {Typ="S" Txt[]="1st program '[::BuildPgm1] [::BuildArgs1]'"}
  6435.       BuildPgm1:     = {CustomBuildPgm=!}
  6436.       BuildArgs1:    = {CustomBuildArgs=!}
  6437.       sep:           = {Typ="S" Txt[]="2nd program '[::BuildPgm2] [::BuildArgs2]'"}
  6438.       BuildPgm2:     = {CustomBuildPgm=!}
  6439.       BuildArgs2:    = {CustomBuildArgs=!}
  6440.       sep:           = {Typ="S" Txt[]="3rd program '[::BuildPgm3] [::BuildArgs3]'"}
  6441.       BuildPgm3:     = {CustomBuildPgm=!}
  6442.       BuildArgs3:    = {CustomBuildArgs=!}
  6443.       sep:           = {Typ="S" Txt[]="4th program '[::BuildPgm4] [::BuildArgs4]'"}
  6444.       BuildPgm4:     = {CustomBuildPgm=!}
  6445.       BuildArgs4:    = {CustomBuildArgs=!}
  6446.       sep:           = {Typ="S" Txt[]="5th program '[::BuildPgm5] [::BuildArgs5]'"}
  6447.       BuildPgm5:     = {CustomBuildPgm=!}
  6448.       BuildArgs5:    = {CustomBuildArgs=!}
  6449.       sep:           = {Typ="S" Txt[]="6th program '[::BuildPgm6] [::BuildArgs6]'"}
  6450.       BuildPgm6:     = {CustomBuildPgm=!}
  6451.       BuildArgs6:    = {CustomBuildArgs=!}
  6452.       sep:           = {Typ="S" Txt[]="7th program '[::BuildPgm7] [::BuildArgs7]'"}
  6453.       BuildPgm7:     = {CustomBuildPgm=!}
  6454.       BuildArgs7:    = {CustomBuildArgs=!}
  6455.       sep:           = {Typ="S" Txt[]="8th program '[::BuildPgm8] [::BuildArgs8]'"}
  6456.       BuildPgm8:     = {CustomBuildPgm=!}
  6457.       BuildArgs8:    = {CustomBuildArgs=!}
  6458.       sep:           = {Typ="S" Txt[]="9th program '[::BuildPgm9] [::BuildArgs9]'"}
  6459.       BuildPgm9:     = {CustomBuildPgm=!}
  6460.       BuildArgs9:    = {CustomBuildArgs=!}
  6461.     }
  6462.  
  6463.     CustomQuakeMenuSep:form =    // separator in the Quake menu
  6464.     {
  6465.       Style = "3"
  6466.       sep: = {Typ="S" Txt=" "}    // some space
  6467.       info: = {Typ="S" Txt="This is a separator line in the menu."}
  6468.     }
  6469.     PluginInfo:form =
  6470.     {
  6471.       Style = "2"
  6472.       file: = {
  6473.         Typ = "E R"
  6474.         Txt = "File"
  6475.       }
  6476.       sep: = {
  6477.         Typ="S" Txt = ""
  6478.       }
  6479.       plug-in: = {
  6480.         Typ = "E R"    // Edit Read-only
  6481.         Txt = "Plug-in name"
  6482.       }
  6483.       desc: = {
  6484.         Typ = "M R"    // Memo/Multiline-text Read-only
  6485.         Txt = "Description"
  6486.       }
  6487.       date: = {
  6488.         Typ = "E R"    // Edit Read-only
  6489.         Txt = "Date"
  6490.       }
  6491.       author: = {
  6492.         Typ = "E R"    // Edit Read-only
  6493.         Txt = "Author"
  6494.       }
  6495.       author e-mail: = {
  6496.         Typ = "E R"    // Edit Read-only
  6497.         Txt = "Author e-mail"
  6498.       }
  6499.       quark: = {
  6500.         Typ = "E R"    // Edit Read-only
  6501.         Txt = "Designed for QuArK version"
  6502.       }
  6503.     }
  6504.     Skin:form =     // form on the polyhedrons page
  6505.     {
  6506.       Style = "1"
  6507.       header: = {
  6508.         Typ = "S"
  6509.         Txt = "%s"   // caption text is found in the object put in the form
  6510.         //Bold = "0"
  6511.       }
  6512.       triangles: = {
  6513.         Typ = "E-R"      // edit, read only
  6514.         Txt = "Triangles :"
  6515.         Hint = "The number of triangle this component has|Number of triangles"
  6516.       }
  6517.       ownedby: = {
  6518.         Typ = "E-R"
  6519.         Txt = "Owned by :"
  6520.         Hint = "The 'parent' component in the tree view"
  6521.       }
  6522.     }
  6523.   }
  6524.  
  6525.   NewFiles.qtx =       // ".qtx" : QuArK Tool boX
  6526.   {
  6527.     ToolBox = "New files..."
  6528.     Pos = '0.65 0.2 0.952 0.7'       // default window position
  6529.     Color = $C00080                 // window caption color, Red/Green/Blue
  6530.     Target = ".qrk"                 // items from this toolbox are to be put in ".qrk" files
  6531.  
  6532.     Root = "New File Types.qtxfolder"
  6533.     New File Types.qtxfolder =
  6534.     {
  6535.       Group.qrk =
  6536.       {
  6537.       }
  6538.       Map.qkm =
  6539.       {
  6540.         ;incl = "NewMap"
  6541.       }
  6542.       Model.qkl =
  6543.       {
  6544.         Root = "Model Root:mr"
  6545.         Model Root:mr =
  6546.         {
  6547.           Misc Group:mg =
  6548.           {
  6549.             type = $06
  6550.           }
  6551.           Component:mc =
  6552.           {
  6553.             show = $01
  6554.             Skeleton:bg =
  6555.             {
  6556.               type = $05
  6557.             }
  6558.             Skins:sg =
  6559.             {
  6560.               type = $02
  6561.               Skin0.pcx =
  6562.               {
  6563.                 ;incl = "EmptyImage"
  6564.               }
  6565.             }
  6566.             Frames:fg =
  6567.             {
  6568.               type = $01
  6569.             }
  6570.           }
  6571.         }
  6572.       }
  6573.       Pak.pak = { }
  6574.       ZIP Archive.zip = { }
  6575.       PCX Image.pcx = { ;incl = "EmptyImage" }
  6576.       TGA Image.tga = { ;incl = "EmptyImage" }
  6577.       JPEG Image.jpg = { ;incl = "EmptyImage" }
  6578.       Windows Bitmap Image.bmp = { ;incl = "EmptyImage" }
  6579.       Text.txt = { }
  6580.       Configuration file.cfg = { }
  6581.       Sound.wav = { }
  6582.       Files for the game.import = { }
  6583. //      Quake Context.qctx = { }
  6584.       Game Context.qctx = { } // See also 'QuakeCtx:form'
  6585.       Advanced Editing.qtxfolder =
  6586.       {
  6587.         Form Context.fctx = { }
  6588.         Form:form = { }
  6589.         Element: = { }
  6590.       }
  6591.     }
  6592.   }
  6593.  
  6594.  
  6595.   NewMapItems.qtx =
  6596.   {
  6597.     ToolBox = "New map items..."
  6598.     Pos = '0.2 0.15 0.8 0.85'
  6599.     Color = $80FF80
  6600.     Target = ".qkm"                 // ".qkm" : QuArK Map
  6601.     Root = "New Polyhedrons.qtxfolder"   // needed only in ".qtx" objects when you actually want it to add a root in the toolbox (i.e. almost always)
  6602.  
  6603.     t_terrainbuilder_cube:incl =
  6604.     {
  6605.       cube:p =
  6606.       {
  6607.         ;desc = "cube to put in the map and then resize and reshape"
  6608.         up:f    = { v = '0 0 32 128 0 32 0 128 32' tex = "[auto]" }
  6609.         down:f  = { v = '0 0 0 0 128 0 128 0 0' tex = "[auto]" m = "1" }
  6610.         left:f  = { v = '-64 0 0 -64 0 128 -64 128 0' tex = "[auto]" m = "1" }
  6611.         back:f  = { v = '0 64 0 0 64 128 128 64 0' tex = "[auto]" m = "1" }
  6612.         right:f = { v = '64 0 0 64 128 0 64 0 128' tex = "[auto]" }
  6613.         front:f = { v = '0 -64 0 128 -64 0 0 -64 128' tex = "[auto]" }
  6614.       }
  6615.     }
  6616.  
  6617.     t_shapebuilder_cube:incl =
  6618.     {
  6619.       cube:p =
  6620.       {
  6621.         ;desc = "cube to put in the map and then resize and reshape"
  6622.         right:f = { v = '64 0 0 64 128 0 64 0 128' tex = "[auto]" }
  6623.         left:f  = { v = '-64 0 0 -64 0 128 -64 128 0' tex = "[auto]" m = "1" }
  6624.         back:f  = { v = '0 64 0 0 64 128 128 64 0' tex = "[auto]" m = "1" }
  6625.         front:f = { v = '0 -64 0 128 -64 0 0 -64 128' tex = "[auto]" }
  6626.         up:f    = { v = '0 0 64 128 0 64 0 128 64' tex = "[auto]" }
  6627.         down:f  = { v = '0 0 -64 0 128 -64 128 0 -64' tex = "[auto]" m = "1" }
  6628.       }
  6629.     }
  6630.  
  6631.     New Polyhedrons.qtxfolder =
  6632.     {
  6633.       Basic polyhedrons.qtxfolder =
  6634.       {
  6635.         cube:p =
  6636.         {
  6637.           ;desc = "cube to put in the map and then resize and reshape"
  6638.           east:f  = { v = '64 0 0 64 128 0 64 0 128' tex = "[auto]" }
  6639.           west:f  = { v = '-64 0 0 -64 0 128 -64 128 0' tex = "[auto]" m = "1" }
  6640.           north:f = { v = '0 64 0 0 64 128 128 64 0' tex = "[auto]" m = "1" }
  6641.           south:f = { v = '0 -64 0 128 -64 0 0 -64 128' tex = "[auto]" }
  6642.           up:f    = { v = '0 0 64 128 0 64 0 128 64' tex = "[auto]" }
  6643.           down:f  = { v = '0 0 -64 0 128 -64 128 0 -64' tex = "[auto]" m = "1" }
  6644.         }
  6645.         platform:p =
  6646.         {
  6647.           ;desc = "a flat cube for ground and ceiling"
  6648.           east:f = { v = '64 0 -8 64 128 -8 64 0 120' tex = "[auto]" }
  6649.           west:f = { v = '-64 0 -8 -64 0 120 -64 128 -8' tex = "[auto]" m = "1" }
  6650.           north:f = { v = '0 64 -8 0 64 120 128 64 -8' tex = "[auto]" m = "1" }
  6651.           south:f = { v = '0 -64 -8 128 -64 -8 0 -64 120' tex = "[auto]" }
  6652.           up:f = { v = '0 0 8 128 0 8 0 128 8' tex = "[auto]" }
  6653.           down:f = { v = '0 0 -8 0 128 -8 128 0 -8' tex = "[auto]" m = "1" }
  6654.         }
  6655.         Y view wall:p =
  6656.         {
  6657.           ;desc = "a vertical wall facing the Y direction"
  6658.           east:f = { v = '64 -8 -40 64 120 -40 64 -8 88' tex = "[auto]" }
  6659.           west:f = { v = '-64 -8 -40 -64 -8 88 -64 120 -40' tex = "[auto]" m = "1" }
  6660.           north:f = { v = '8 8 -40 8 8 88 136 8 -40' tex = "[auto]" m = "1" }
  6661.           south:f = { v = '8 -8 -40 136 -8 -40 8 -8 88' tex = "[auto]" }
  6662.           up:f = { v = '8 -8 64 136 -8 64 8 120 64' tex = "[auto]" }
  6663.           down:f = { v = '8 -8 -64 8 120 -64 136 -8 -64' tex = "[auto]" m = "1" }
  6664.         }
  6665.         X view wall:p =
  6666.         {
  6667.           ;desc = "a vertical wall facing the X direction"
  6668.           east:f = { v = '8 0 0 8 128 0 8 0 128' tex = "[auto]" }
  6669.           west:f = { v = '-8 0 0 -8 0 128 -8 128 0' tex = "[auto]" m = "1" }
  6670.           north:f = { v = '-8 64 0 -8 64 128 120 64 0' tex = "[auto]" m = "1" }
  6671.           south:f = { v = '-8 -64 0 120 -64 0 -8 -64 128' tex = "[auto]" }
  6672.  
  6673.           up:f = { v = '-8 0 64 120 0 64 -8 128 64' tex = "[auto]" }
  6674.           down:f = { v = '-8 0 -64 -8 128 -64 120 0 -64' tex = "[auto]" m = "1" }
  6675.         }
  6676.         wedge:p =
  6677.         {
  6678.           ;desc = "a wedge in the horizontal position"
  6679.           west:f = { v = '-64 -63.57516 0 -64 -63.57516 128 -64 64.42484 0' tex = "[auto]" m = "1" }
  6680.           south:f = { v = '63.57658 -64.00017 -64.39999 63.57658 -63.99950 63.60001 -64.42342 -64.00051 -64.39999' tex = "[auto]" m = "1" }
  6681.           face:f = { v = '86.17815 -86.22846 -0.00002 18.29591 -18.34623 -0.00002 86.07752 -86.32910 127.99990' tex = "[auto]" }
  6682.           up:f = { v = '-5.63757 -26.12108 32 -5.63757 -154.12110 32 124.89730 -26.12108 32' tex = "[auto]" }
  6683.           down:f = { v = '-0.32341 -64.52548 -32 -0.32341 63.47453 -32 127.67660 -64.52548 -32' tex = "[auto]" m = "1" }
  6684.         }
  6685.         pyramid:p =
  6686.         {
  6687.           ;desc = "a pyramid with 4 sides and a base"
  6688.           east cut:f =
  6689.           {
  6690.             v = '0 0 96 57.24334 0 -18.48668 0 128 96'
  6691.             tex = "[auto]"
  6692.             tv = '0 0 0 128 128 0'
  6693.           }
  6694.           west cut:f =
  6695.           {
  6696.             v = '0 0 96 57.24334 0 210.48670 0 128 96'
  6697.             tex = "[auto]"
  6698.             tv = '0 0 0 -128 -128 0'
  6699.           }
  6700.           north cut:f =
  6701.           {
  6702.             v = '0 35.37833 25.24334 0 -21.86501 139.73000 128 35.37833 25.24334'
  6703.             tex = "[auto]"
  6704.             tv = '0 0 -128 0 0 -128'
  6705.           }
  6706.           south cut:f =
  6707.           {
  6708.             v = '0 35.37833 166.75670 0 -21.86501 52.26997 128 35.37833 166.75670'
  6709.             tex = "[auto]"
  6710.             tv = '0 0 128 0 0 128'
  6711.           }
  6712.           down:f =
  6713.           {
  6714.             v = '0 0 -32 0 128 -32 128 0 -32'
  6715.             tex = "[auto]"
  6716.             tv = '0 0 0 -128 128 0'
  6717.           }
  6718.         }
  6719.         tetrahedron:p =
  6720.         {
  6721.           ;desc = "a pyramid with 3 sides and a base"
  6722.           east cut:f =
  6723.           {
  6724.             v = '0 -64 -64 64 64 -64 0 0 64'
  6725.             tex = "[auto]"
  6726.             tv = '17.08650 -74.04104 145.08650 -74.04104 17.08650 -202.04110'
  6727.           }
  6728.           west cut:f =
  6729.           {
  6730.             v = '0 -64 -64 0 0 64 -64 64 -64'
  6731.             tex = "[auto]"
  6732.             tv = '-56.95401 -146.96530 -196.31030 4.94197 25.96877 4.94197'
  6733.           }
  6734.           north cut:f =
  6735.           {
  6736.             v = '-64 64 -64 -128 0 64 0 0 64'
  6737.             tex = "[auto]"
  6738.             tv = '-107.09550 19.27555 20.90454 19.27605 -107.09500 -108.72450'
  6739.           }
  6740.           down:f =
  6741.           {
  6742.             v = '0 -64 -64 -64 64 -64 64 64 -64'
  6743.             tex = "[auto]"
  6744.             tv = '32.28578 15.25432 -76.26430 83.08398 100.11550 123.80450'
  6745.           }
  6746.         }
  6747.         triangular prism:p =
  6748.         {
  6749.           ;desc = "a prism with a triangular base"
  6750.           east cut:f =
  6751.           {
  6752.             v = '-110.59940 -8 285.19880 -239.39690 -8 542.79390 -110.59940 -296 285.19880'
  6753.             tex = "[auto]"
  6754.             tv = '0 0 0 -192 -192 0'
  6755.           }
  6756.           west cut:f =
  6757.           {
  6758.             v = '-97.79935 -8 -131.59870 -226.59690 -8 -389.19390 -97.79935 -296 -131.59870'
  6759.             tex = "[auto]"
  6760.             tv = '0 0 0 192 192 0'
  6761.           }
  6762.           north:f =
  6763.           {
  6764.             v = '0 64 -2.21301 -288 64 -2.21301 -0.00001 64 285.78700'
  6765.             tex = "[auto]"
  6766.             tv = '0 0 192 0 0 -192'
  6767.           }
  6768.           south:f =
  6769.           {
  6770.             v = '0 -64 8.00002 288 -64 8.00002 0 -64 296.00000'
  6771.             tex = "[auto]"
  6772.             tv = '0 0 192 0 0 -192'
  6773.           }
  6774.           down:f =
  6775.           {
  6776.             v = '0 -8 -63.99998 288 -8 -63.99998 0 -296 -63.99998'
  6777.             tex = "[auto]"
  6778.             tv = '0 0 0 -192 -192 0'
  6779.           }
  6780.         }
  6781.       }
  6782.       Complex polyhedrons.qtxfolder =
  6783.       {
  6784.         prism, 6 sides:p =
  6785.         {
  6786.           ;desc = "a prism with a hexagonal base"
  6787.           face:f = { v = '-0.00001 -128.00000 0 128 -128.00000 0 -0.00001 -128.00000 128' tex = "[auto]" }
  6788.           face:f = { v = '-0.00001 128.00000 0 -0.00001 128.00000 128 128 128.00000 0' tex = "[auto]" m = "1" }
  6789.           face:f = { v = '-0.00001 -0.00002 -128 -0.00001 128.00000 -128 128 -0.00002 -128' tex = "[auto]" m = "1" }
  6790.           face:f = { v = '-0.00001 -0.00002 128 128 -0.00002 128 -0.00001 128.00000 128' tex = "[auto]" }
  6791.           face:f = { v = '147.80160 -0.00002 0 221.70250 128.00000 0 147.80160 -0.00002 128' tex = "[auto]" }
  6792.           face:f = { v = '-147.80170 -0.00002 0 -147.80170 -0.00002 128 -73.90089 128.00000 0' tex = "[auto]" m = "1" }
  6793.           face:f = { v = '147.80170 -0.00002 0 73.90087 128.00000 0 147.80170 -0.00002 128' tex = "[auto]" }
  6794.           face:f = { v = '-147.80170 -0.00002 0 -147.80170 -0.00002 128 -221.70250 128.00000 0' tex = "[auto]" m = "1" }
  6795.         }
  6796.         prism, 8 sides:p =
  6797.         {
  6798.           ;desc = "a prism with an octogonal base"
  6799.           face:f = { v = '-181.01930 0 0 -181.01930 0 128 -309.01930 128.00000 0' tex = "[auto]" m = "1" }
  6800.           face:f = { v = '181.01920 0 0 53.01929 128.00000 0 181.01920 0 128' tex = "[auto]" }
  6801.           face:f = { v = '789.01930 608 0 917.01930 736 0 789.01930 608 128' tex = "[auto]" }
  6802.           face:f = { v = '426.98070 608 0 426.98070 608 128 554.98070 736 0' tex = "[auto]" m = "1" }
  6803.           face:f = { v = '0 0 -128 0 128.00000 -128 128 0 -128' tex = "[auto]" m = "1" }
  6804.           face:f = { v = '0 0 128 128 0 128 0 128.00000 128' tex = "[auto]" }
  6805.           face:f = { v = '-128 0 0 -128 0 128 -128 128.00000 0' tex = "[auto]" m = "1" }
  6806.           face:f = { v = '128 0 0 128 128.00000 0 128 0 128' tex = "[auto]" }
  6807.           face:f = { v = '0 -128 0 128 -128 0 0 -128 128' tex = "[auto]" }
  6808.           face:f = { v = '0 128.00000 0 0 128.00000 128 128 128.00000 0' tex = "[auto]" m = "1" }
  6809.         }
  6810.         prism, 10 sides:p =
  6811.         {
  6812.           ;desc = "a prism with a decagonal base"
  6813.           face:f = { v = '0.00002 -128 0 128.00000 -128 0 0.00002 -128 128' tex = "[auto]" }
  6814.           face:f = { v = '0.00002 128 0 0.00002 128 128 128.00000 128 0' tex = "[auto]" m = "1" }
  6815.           face:f = { v = '0.00002 0 -128 0.00002 128 -128 128.00000 0 -128' tex = "[auto]" m = "1" }
  6816.           face:f = { v = '0.00002 0 128 128.00000 0 128 0.00002 128 128' tex = "[auto]" }
  6817.           face:f = { v = '0.00002 158.21670 0 0.00002 158.21670 128 128.00000 251.21410 0' tex = "[auto]" m = "1" }
  6818.           face:f = { v = '0.00002 -158.21670 0 128.00000 -65.21923 0 0.00002 -158.21670 128' tex = "[auto]" }
  6819.           face:f = { v = '-134.58710 0 0 -134.58710 0 128 -92.99741 128 0' tex = "[auto]" m = "1" }
  6820.           face:f = { v = '134.58710 0 0 176.17680 128 0 134.58710 0 128' tex = "[auto]" }
  6821.           face:f = { v = '134.58720 0 0 92.99746 128 0 134.58720 0 128' tex = "[auto]" }
  6822.           face:f = { v = '-134.58710 0 0 -134.58710 0 128 -176.17680 128 0' tex = "[auto]" m = "1" }
  6823.           face:f = { v = '0.00002 158.21670 0 0.00002 158.21670 128 128.00000 65.21912 0' tex = "[auto]" m = "1" }
  6824.           face:f = { v = '0.00002 -158.21670 0 128.00000 -251.21410 0 0.00002 -158.21670 128' tex = "[auto]" }
  6825.         }
  6826.         cuboctahedron:p =
  6827.         {
  6828.           ;desc = "a kind of cube with cut corners"
  6829.           face:f = { v = '-64 0 0 -64 0 128 -64 128 0' tex = "[auto]" m = "1" }
  6830.           face:f = { v = '64 0 0 64 128 0 64 0 128' tex = "[auto]" }
  6831.           face:f = { v = '0 -64 0 128 -64 0 0 -64 128' tex = "[auto]" }
  6832.           face:f = { v = '0 64 0 0 64 128 128 64 0' tex = "[auto]" m = "1" }
  6833.           face:f = { v = '0 0 -64 0 128 -64 128 0 -64' tex = "[auto]" m = "1" }
  6834.           face:f = { v = '0 0 64 128 0 64 0 128 64' tex = "[auto]" }
  6835.           face:f = { v = '0 -1248 1376 128 -1248 1248 0 -1120 1248' tex = "[auto]" }
  6836.           face:f = { v = '0 -1248 -1120 128 -1248 -1248 0 -1120 -992' tex = "[auto]" }
  6837.           face:f = { v = '0 -1248 -1120 128 -1248 -992 0 -1120 -992' tex = "[auto]" }
  6838.           face:f = { v = '0 -1248 1376 128 -1248 1504 0 -1120 1248' tex = "[auto]" }
  6839.           face:f = { v = '0 -1248 -1376 0 -1120 -1248 128 -1248 -1504' tex = "[auto]" m = "1" }
  6840.           face:f = { v = '0 -1248 -1376 0 -1120 -1248 128 -1248 -1248' tex = "[auto]" m = "1" }
  6841.           face:f = { v = '0 -1248 1120 0 -1120 992 128 -1248 1248' tex = "[auto]" m = "1" }
  6842.           face:f = { v = '0 -1248 1120 0 -1120 992 128 -1248 992' tex = "[auto]" m = "1" }
  6843.         }
  6844.         rombobicuboctahedron:p =
  6845.         {
  6846.           ;desc = "a rough sphere"
  6847.           face:f = { v = '-136 0 -0.00001 -136 0 128.00000 -136 128 -0.00001' tex = "[auto]" m = "1" }
  6848.           face:f = { v = '136 0 -0.00001 136 128 -0.00001 136 0 128.00000' tex = "[auto]" }
  6849.           face:f = { v = '0 -136 -0.00001 128 -136 -0.00001 0 -136 128.00000' tex = "[auto]" }
  6850.           face:f = { v = '0 136 -0.00001 0 136 128.00000 128 136 -0.00001' tex = "[auto]" m = "1" }
  6851.           face:f = { v = '0 0 -136.00000 0 128 -136.00000 128 0 -136.00000' tex = "[auto]" m = "1" }
  6852.           face:f = { v = '0 0 136.00000 128 0 136.00000 0 128 136.00000' tex = "[auto]" }
  6853.           face:f = { v = '0 247.45350 -0.00001 0 120.70240 128.00000 128 119.45350 -0.00001' tex = "[auto]" m = "1" }
  6854.           face:f = { v = '0 247.45360 -0.00001 0 120.70250 128.00000 128 375.45360 -0.00001' tex = "[auto]" m = "1" }
  6855.           face:f = { v = '-247.45360 0 -0.00001 -120.70250 0 128.00000 -375.45370 128 -0.00001' tex = "[auto]" m = "1" }
  6856.           face:f = { v = '535.45360 288 -0.00001 663.45360 416 -0.00001 408.70250 288 128.00000' tex = "[auto]" }
  6857.           face:f = { v = '535.45360 288 -0.00001 663.45360 416 -0.00001 662.20470 288 128.00000' tex = "[auto]" }
  6858.           face:f = { v = '40.54627 288 -0.00001 -86.20483 288 128.00000 168.54630 416 -0.00001' tex = "[auto]" m = "1" }
  6859.           face:f = { v = '-247.45370 0 -0.00001 -374.20480 0 128.00000 -375.45370 128 -0.00001' tex = "[auto]" m = "1" }
  6860.           face:f = { v = '-288 -1024 480 -160 -1024 352 -288 -896 480' tex = "[auto]" }
  6861.           face:f = { v = '0 -1024 1216 128 -1024 1216 0 -896 1088' tex = "[auto]" }
  6862.           face:f = { v = '0 0 192.00000 128 0 320 0 128 192.00000' tex = "[auto]" }
  6863.           face:f = { v = '0 0 192.00000 128 0 192.00000 0 128 320' tex = "[auto]" }
  6864.           face:f = { v = '-480 288 -0.00001 -480 288 128.00000 -608 416 -0.00001' tex = "[auto]" m = "1" }
  6865.           face:f = { v = '480 288 -0.00001 608 416 -0.00001 480 288 128.00000' tex = "[auto]" }
  6866.           face:f = { v = '-96 288 -0.00001 -224 416 -0.00001 -96 288 128.00000' tex = "[auto]" }
  6867.           face:f = { v = '96 288 -0.00001 96 288 128.00000 224 416 -0.00001' tex = "[auto]" m = "1" }
  6868.           face:f = { v = '-288 -1024 95.99998 -288 -896 95.99998 -160 -1024 -32.00002' tex = "[auto]" m = "1" }
  6869.           face:f = { v = '0 -1024 832 0 -896 704 128 -1024 832' tex = "[auto]" m = "1" }
  6870.           face:f = { v = '-288 -1024 -480 -288 -896 -480 -160 -1024 -352' tex = "[auto]" m = "1" }
  6871.           face:f = { v = '0 -1024 -1216 0 -896 -1088 128 -1024 -1216' tex = "[auto]" m = "1" }
  6872.           face:f = { v = '-288 535.45350 -0.00001 -288 662.20460 128.00000 -160 407.45360 -0.00001' tex = "[auto]" m = "1" }
  6873.         }
  6874.         cone, 8 sides:p =
  6875.         {
  6876.           ;desc = "a cone with an octogonal base"
  6877.           face:f = { v = '-480.00020 375.48830 -25.59972 -352.00020 247.48830 -25.59972 -480.00020 479.99990 102.40030' tex = "[auto]" }
  6878.           face:f = { v = '-480.00020 584.51160 -25.59972 -480.00020 480.00000 102.40030 -352.00020 456.51170 -25.59972' tex = "[auto]" m = "1" }
  6879.           face:f = { v = '584.51110 479.99980 -25.59972 712.51110 607.99980 -25.59972 479.99960 479.99980 102.40030' tex = "[auto]" }
  6880.           face:f = { v = '-0.00015 104.51130 -25.59972 -0.00015 -0.00034 102.40030 127.99980 232.51130 -25.59972' tex = "[auto]" m = "1" }
  6881.           face:f = { v = '-0.00015 -0.00021 -25.59972 -0.00015 127.99980 -25.59972 127.99980 -0.00021 -25.59972' tex = "[auto]" m = "1" }
  6882.           face:f = { v = '-73.90103 -0.00021 -25.59972 -0.00015 -0.00021 102.40030 -73.90103 127.99980 -25.59972' tex = "[auto]" m = "1" }
  6883.           face:f = { v = '73.90060 -0.00021 -25.59972 73.90060 127.99980 -25.59972 -0.00015 -0.00021 102.40030' tex = "[auto]" }
  6884.           face:f = { v = '-0.00015 -73.90097 -25.59972 127.99980 -73.90097 -25.59972 -0.00015 -0.00021 102.40030' tex = "[auto]" }
  6885.           face:f = { v = '-0.00015 73.90067 -25.59972 -0.00015 -0.00021 102.40030 127.99980 73.90067 -25.59972' tex = "[auto]" m = "1" }
  6886.         }
  6887.       }
  6888.       Duplicators & misc.qtxfolder =
  6889.       {
  6890.         Basic Duplicator:d =
  6891.         {
  6892.           ;desc = "basic duplicator, to make several copies of an object"
  6893.           origin = "0 0 0"
  6894.           offset = "32 32 0"
  6895.           count = "5"
  6896.           angle = ""
  6897.           out = "1"
  6898.           macro = "dup basic"
  6899.         }
  6900.         Copy One:d =
  6901.         {
  6902.           ;desc = "this version makes just one copy that you can move elsewhere"
  6903.           origin = "0 0 0"
  6904.           offset = "64 64 0"
  6905.           angle = ""
  6906.           out = "1"
  6907.           macro = "dup basic"
  6908.         }
  6909.         New Copy One:d =
  6910.         {
  6911.           ;desc = "experimental enhanced version, image is located at dup origin, and more"
  6912.           origin = "64 64 0"
  6913.           offset = "0 0 0"
  6914.           out = "1"
  6915.           offset dup = "1"
  6916.           macro = "dup lin"
  6917.         }
  6918.         Linear Duplicator:d =
  6919.         {
  6920.           ;desc = "enhanced version : can apply linear mappings (mirror, zoom, etc)"
  6921.           origin = "0 0 0"
  6922.           offset = "32 32 0"
  6923.           count = "3"
  6924.           out = "1"
  6925.           item center = "1"
  6926.           linear = "1 0 0 0 1 0 0 0 1"
  6927.           macro = "dup lin"
  6928.         }
  6929.         Mirror X:d =
  6930.         {
  6931.           ;desc = "X-axis mirror"
  6932.           out = "1"
  6933.           origin = "0 0 0"
  6934.           macro = "dup symx"
  6935.         }
  6936.         Mirror Y:d =
  6937.         {
  6938.           ;desc = "Y-axis mirror"
  6939.           out = "1"
  6940.           origin = "0 0 0"
  6941.           macro = "dup symy"
  6942.         }
  6943.         Mirror Z:d =
  6944.         {
  6945.           ;desc = "Z-axis mirror"
  6946.           out = "1"
  6947.           origin = "0 0 0"
  6948.           macro = "dup symz"
  6949.         }
  6950.         Mirror XYZ:d =
  6951.         {
  6952.           ;desc = "XYZ-axes toggleable mirror"
  6953.           out = "1"
  6954.           origin = "0 0 0"
  6955.           x = "X"
  6956.           macro = "dup symxyz"
  6957.         }
  6958.         Mirror XY:d =
  6959.         {
  6960.           ;desc = "X- and Y-axis mirrors (one original and three images)"
  6961.           out = "1"
  6962.           origin = "0 0 0"
  6963.           macro = "dup symxy"
  6964.         }
  6965.         Radial:d =
  6966.         {
  6967.           ;desc = "Copies around an axis"
  6968.           origin = "0 0 0"
  6969.           count = "2"
  6970.           around = '180'
  6971.           spiral = '0 0'
  6972.           axis = '0 0 1'
  6973.           macro = "dup radial"
  6974.   new cube:p =
  6975.   {
  6976.     east:f =
  6977.     {
  6978.       v = '192 0 0 192 128 0 192 0 128'
  6979.       tex = "[auto]"
  6980.     }
  6981.     west:f =
  6982.     {
  6983.       v = '64 0 0 64 -128 0 64 0 128'
  6984.       tex = "[auto]"
  6985.     }
  6986.     north:f =
  6987.     {
  6988.       v = '128 64 0 0 64 0 128 64 128'
  6989.       tex = "[auto]"
  6990.     }
  6991.     south:f =
  6992.     {
  6993.       v = '128 -64 0 256 -64 0 128 -64 128'
  6994.       tex = "[auto]"
  6995.     }
  6996.     up:f =
  6997.     {
  6998.       v = '128 0 64 256 0 64 128 128 64'
  6999.       tex = "[auto]"
  7000.     }
  7001.     down:f =
  7002.     {
  7003.       v = '128 0 -64 256 0 -64 128 -128 -64'
  7004.       tex = "[auto]"
  7005.     }
  7006.   }
  7007.  
  7008.         }
  7009.         Digger:d =
  7010.         {
  7011.           ;desc = "polyhedrons inside are 'negative' and dig the map"
  7012.           ;incl = "defpoly"
  7013.           macro = "digger"
  7014.         }
  7015.         Hollow Maker:d =
  7016.         {
  7017.           ;desc = "polyhedrons inside are automatically made hollow"
  7018.           ;incl = "defpoly"
  7019.           macro = "hollow maker"
  7020.           depth = "8"
  7021.         }
  7022.         Wall Maker:d =
  7023.         {
  7024.           ;desc = "build walls based on a polyhedron shape"
  7025.           ;incl = "defpoly"
  7026.           macro = "wall maker"
  7027.           depth = "8"
  7028.         }
  7029. //  UserCenterHandle stuff better, methinks
  7030. //        Origin Duplicator:d =
  7031. //        {
  7032. //          ;desc = "a center point for various kinds of groups"
  7033. //           origin        = "0 0 0"
  7034. //           macro = "dup origin"
  7035. //        }
  7036.         Path Duplicator:g =
  7037.         {
  7038.           ;desc = "corridor maker, easy creation of connected corridors"
  7039.           Path Duplicator:d =
  7040.           {
  7041.             origin        = "0 0 0"
  7042.             macro         = "dup path"
  7043.             target        = "dpath1"
  7044.             speeddraw     = "0"
  7045.             scaletexture  = "0"
  7046.             Template:g =
  7047.             {
  7048.               cube:p =
  7049.               {
  7050.                 east:f  = { v = ' 64   0   0   64 128   0   64   0 128' tex = "[auto]" }
  7051.                 west:f  = { v = '-64   0   0  -64   0 128  -64 128   0' tex = "[auto]" m = "1" }
  7052.                 north:f = { v = '  0  64   0    0  64 128  128  64   0' tex = "[auto]" m = "1" }
  7053.                 south:f = { v = '  0 -64   0  128 -64   0    0 -64 128' tex = "[auto]" }
  7054.                 up:f    = { v = '  0   0  64  128   0  64    0 128  64' tex = "[auto]" }
  7055.                 down:f  = { v = '  0   0 -64    0 128 -64  128   0 -64' tex = "[auto]" m = "1" }
  7056.               }
  7057.               cube:p =
  7058.               {
  7059.                 neg = "1"
  7060.                 east:f  = { v = ' 64   0   0   64 128   0   64   0 128' tex = "[auto]" }
  7061.                 west:f  = { v = '-64   0   0  -64   0 128  -64 128   0' tex = "[auto]" m = "1" }
  7062.                 north:f = { v = '  0  32   0    0  32 128  128  32   0' tex = "[auto]" m = "1" }
  7063.                 south:f = { v = '  0 -32   0  128 -32   0    0 -32 128' tex = "[auto]" }
  7064.                 up:f    = { v = '  0   0  32  128   0  32    0 128  32' tex = "[auto]" }
  7065.                 down:f  = { v = '  0   0 -32    0 128 -32  128   0 -32' tex = "[auto]" m = "1" }
  7066.               }
  7067.             }
  7068.           }
  7069.           PathDup.Point:d =
  7070.           {
  7071.             macro       = "dup path_point"
  7072.             origin      = "96 96 0"
  7073.             targetname  = "dpath1"
  7074.             target      = "dpath2"
  7075.             level       = "1"
  7076.           }
  7077.           PathDup.Point:d =
  7078.           {
  7079.             macro       = "dup path_point"
  7080.             origin      = "192 96 0"
  7081.             targetname  = "dpath2"
  7082.             target      = "dpath3"
  7083.           }
  7084.           PathDup.Point:d =
  7085.           {
  7086.             macro       = "dup path_point"
  7087.             origin      = "192 192 0"
  7088.             targetname  = "dpath3"
  7089.             target      = "dpathX"
  7090.           }
  7091.         }
  7092. //        Instance Duplicator:g =
  7093. //        {
  7094. //          ;desc = "Multiple instances at chosen places, with linear transformation"
  7095. //          Instance Duplicator:d =
  7096. //          {
  7097. //            origin        = "0 0 0"
  7098. //            macro         = "dup instance"
  7099. //            target        = "dpath1"
  7100. ////            speeddraw     = "0"
  7101. ////            scaletexture  = "0"
  7102. //            Template:g =
  7103. //            {
  7104. //              cube:p =
  7105. //              {
  7106. //                east:f  = { v = ' 64   0   0   64 128   0   64   0 128' tex = "[auto]" }
  7107. //                west:f  = { v = '-64   0   0  -64   0 128  -64 128   0' tex = "[auto]" m = "1" }
  7108. //                north:f = { v = '  0  64   0    0  64 128  128  64   0' tex = "[auto]" m = "1" }
  7109. //                south:f = { v = '  0 -64   0  128 -64   0    0 -64 128' tex = "[auto]" }
  7110. //                up:f    = { v = '  0   0  64  128   0  64    0 128  64' tex = "[auto]" }
  7111. //                down:f  = { v = '  0   0 -64    0 128 -64  128   0 -64' tex = "[auto]" m = "1" }
  7112. //              }
  7113. //            }
  7114. //          }
  7115. //          PathDup.Point:d =
  7116. //          {
  7117. //            macro       = "dup path_point"
  7118. //            origin      = "160 160 0"
  7119. //            targetname  = "dpath1"
  7120. //            target      = "dpath2"
  7121. //          }
  7122. //          PathDup.Point:d =
  7123. //          {
  7124. //            macro       = "dup path_point"
  7125. //            origin      = "160 320 0"
  7126. //            targetname  = "dpath2"
  7127. //            target      = "dpathX"
  7128. //          }
  7129. //        }
  7130.         Extruder:d = {
  7131.           origin = "0 0 0"
  7132. //          axis = '1 0 0'
  7133.           side = '0 -1 0'
  7134.           edge = '8'
  7135.           type = "t"
  7136.           circ_show = "1"
  7137.           tex = "[auto]"
  7138.           _closed = "1"
  7139.           macro =  "dup extruder"
  7140.           spine:g =
  7141.           {
  7142.             rib:g = {
  7143.               point:g = {where = '64 -64'}
  7144.               point:g = {where = '64 64'}
  7145.               point:g = {where = '-64 64'}
  7146.               point:g = {where = '-64 -64'}
  7147. //              point:g = {where = '0 32'}
  7148. //              point:g = {where = '90 32'}
  7149. //              point:g = {where = '180 32'}
  7150. //              point:g = {where = '270 32'}
  7151.             }
  7152.             rib:g = {
  7153.               location = '96 0 0'
  7154.             }
  7155.           }
  7156.         }
  7157.         ArgReplacer:d = {
  7158.       ;desc = "Arg Replacer : Search and Replaces %keyword% in spec/args"
  7159.           macro = "arg replacer"
  7160.         }
  7161.       }
  7162.       Shape Builders.qtxfolder =
  7163.       {
  7164.         Brush Arch/Cap Maker:d =
  7165.         {
  7166.           ;desc = "build a brush-based arch or cap from a cubic polyhedron shape"
  7167.           macro = "dup brushcap"
  7168.           inverse = "1"
  7169.           subdivide = '2'
  7170.           t_shapebuilder_cube = !
  7171.         }
  7172.         Brush Bevel Maker:d =
  7173.         {
  7174.           ;desc = "build brush-based bevel-corner from a cubic polyhedron shape"
  7175.           macro = "dup brushbevel"
  7176.           inverse = "1"
  7177.           subdivide = '2'
  7178.           left = "1"
  7179.           open = "1"
  7180.           t_shapebuilder_cube = !
  7181.         }
  7182.       //Brush Column Maker:d =
  7183.       //{
  7184.       //  ;desc = "build brush-based column from a cubic polyhedron shape"
  7185.       //  macro = "dup brushcolumn"
  7186.       //  open = "1"
  7187.       //  t_shapebuilder_cube = !
  7188.       //}
  7189.         Staircase Maker:d =
  7190.         {
  7191.           ;desc = "build a staircase from a cubic polyhedron shape"
  7192.           macro = "dup stair"
  7193.           steps = "8"
  7194.           sameheight = ""
  7195.           oldstyle = ""
  7196.           t_shapebuilder_cube = !
  7197.         }
  7198.         Terrain Maker 2:d =
  7199.         {
  7200.           ;desc = "build a terrain from a cubic polyhedron shape - 2 triangles per square"
  7201.           macro = "dup terrain2"
  7202.           wedgeunits = "32"
  7203.           sameheight = ""
  7204.           detailmesh = ""
  7205.           t_terrainbuilder_cube = !
  7206.         }
  7207.         Terrain Maker 2X:d =
  7208.         {
  7209.           ;desc = "build a terrain from a cubic polyhedron shape - 2 triangles per square for X pattern"
  7210.           macro = "dup terrain2X"
  7211.           wedgeunits = "32"
  7212.           sameheight = ""
  7213.           detailmesh = ""
  7214.           t_terrainbuilder_cube = !
  7215.         }
  7216.         Terrain Maker 4:d =
  7217.         {
  7218.           ;desc = "build a terrain from a cubic polyhedron shape - 4 triangles per square"
  7219.           macro = "dup terrain4"
  7220.           wedgeunits = "32"
  7221.           sameheight = ""
  7222.           detailmesh = ""
  7223.           t_terrainbuilder_cube = !
  7224.         }
  7225.       }
  7226.       Game specific.qtxfolder =
  7227.       {
  7228.         Half-Life infodecal Helper:d =
  7229.         {
  7230.           ;desc = "Write words and sentences using infodecals"
  7231.           text = "HALFLIFE"
  7232.           wildchar = "@"
  7233.           tex_upper = "{CAPS@"
  7234.           tex_lower = " "
  7235.           tex_numeric = "{MED#S@"
  7236.           origin = "0 0 0"
  7237.           offset = "12 0 0"
  7238.           macro = "dup hlinfodecal"
  7239.         }
  7240.         Half-Life .RAD File Maker:d =
  7241.         {
  7242.           ;desc = "Helps you store texture lighting values (LIGHTS.RAD or <mapname>.RAD)"
  7243.           macro = "dup hlradfilemaker"
  7244.         }
  7245.       }
  7246.       Tools.qtxfolder =
  7247.       {
  7248.         plane duplicator:d = {
  7249.           ;desc = "'duplicator' for making a 3 ponit plane"
  7250.           P1 = '0 64 0'
  7251.           P2 = '64 -64 0'
  7252.           P3 = '-64 -64 0'
  7253.           macro = "dup plane"
  7254.         }
  7255.       }
  7256.     }
  7257.   }
  7258.  
  7259.   Textures.qtx =
  7260.   {
  7261.     ToolBox = "Texture Browser..."
  7262.     Pos = "max"
  7263.     Color = $704000      // Red/Green/Blue
  7264.     Target = ".qkm"      // textures are also to be put in maps
  7265.     Left = '140'         // size of the Explorer at the left (the right space displays the selected objects)
  7266.     Root = "Searched.qtxfolder"
  7267.     Searched.qtxfolder =
  7268.     {
  7269.       SearchBox = "1"
  7270.       Searched Texures.txlist =
  7271.       {
  7272.       }
  7273.     }
  7274.   }
  7275. //  Map Specifics display.qctx =
  7276. //  {
  7277. //    DrawMap: =
  7278. //    {
  7279. //      Spec = "target"
  7280. //      find: =
  7281. //      {
  7282. //        Spec = "targetname"
  7283. //        Arg[] = "[~target]"
  7284. //        Arrow: = {from[]="[~origin]" to[][]="[<[~origin]>]"}
  7285. //      }
  7286. //    }
  7287. //    DrawMap: =
  7288. //    {
  7289. //      Spec = "targetname"
  7290. //      find: =
  7291. //      {
  7292. //        Spec = "target"
  7293. //        Arg[] = "[~targetname]"
  7294. //        Arrow: = {from[][]="[<[~origin]>]" to[]="[~origin]"}
  7295. //      }
  7296. //      find: =
  7297. //      {
  7298. //        Spec = "killtarget"
  7299. //        Arg[] = "[~targetname]"
  7300. //        Arrow: = {from[][]="[<[~origin]>]" to[]="[~origin]" color="1 0 0"}
  7301. //      }
  7302. //    }
  7303. //    DrawMap: =
  7304. //    {
  7305. //      Spec = "killtarget"
  7306. //      find: =
  7307. //      {
  7308. //        Spec = "targetname"
  7309. //        Arg[] = "[~killtarget]"
  7310. //        Arrow: = {from[]="[~origin]" to[][]="[<[~origin]>]" color="1 0 0"}
  7311. //      }
  7312. //    }
  7313. //  }
  7314.  
  7315.   defpoly:incl =      // default polyhedron
  7316.   {
  7317.     ;incl[] = "[:Map:Building:DefPoly]"   // equals one of the polyhedrons below
  7318.   }
  7319.   poly128:incl =      // default 128x128x128 polyhedron for brush entities
  7320.   {
  7321.     poly:p =
  7322.     {
  7323.       east:f   = {v= '64 0 0 64 128 0 64 0 128'   tex="[auto]"}
  7324.       west:f   = {v='-64 0 0 -64 0 128 -64 128 0' tex="[auto]" m="1"}
  7325.       north:f  = {v= '0 64 0 0 64 128 128 64 0'   tex="[auto]" m="1"}
  7326.       south:f  = {v='0 -64 0 128 -64 0 0 -64 128' tex="[auto]"}
  7327.       up:f     = {v= '0 0 64 128 0 64 0 128 64'   tex="[auto]"}
  7328.       down:f   = {v='0 0 -64 0 128 -64 128 0 -64' tex="[auto]" m="1"}
  7329.     }
  7330.   }
  7331.   poly64:incl =      // default 64x64x64 polyhedron for brush entities
  7332.   {
  7333.     poly:p =
  7334.     {
  7335.       east:f   = {v='32 -32 -32 32 96 -32 32 -32 96'    tex="[auto]"}
  7336.       west:f   = {v='-32 -32 -32 -32 -32 96 -32 96 -32' tex="[auto]" m="1"}
  7337.       north:f  = {v='-32 32 -32 -32 32 96 96 32 -32'    tex="[auto]" m="1"}
  7338.       south:f  = {v='32 -32 -32 160 -32 -32 32 -32 96'  tex="[auto]"}
  7339.       up:f     = {v='-32 -32 32 96 -32 32 -32 96 32'    tex="[auto]"}
  7340.       down:f   = {v='-32 -32 -32 -32 96 -32 96 -32 -32' tex="[auto]" m="1"}
  7341.     }
  7342.   }
  7343.   NewMap1:incl =
  7344.   {
  7345.     New map.qkm =
  7346.     {
  7347.       ;incl = "NewMap"     // NewMap:incl is read from one of the files DataXX.qrk
  7348.     }
  7349.   }
  7350.   EmptyGeneric:incl =
  7351.   {
  7352.     Size = '64 64'
  7353.     Image1 = $0000000000000000000000000000000000000000000000000000000000000000
  7354.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7355.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7356.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7357.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7358.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7359.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7360.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7361.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7362.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7363.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7364.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7365.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7366.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7367.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7368.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7369.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7370.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7371.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7372.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7373.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7374.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7375.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7376.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7377.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7378.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7379.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7380.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7381.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7382.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7383.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7384.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7385.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7386.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7387.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7388.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7389.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7390.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7391.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7392.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7393.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7394.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7395.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7396.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7397.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7398.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7399.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7400.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7401.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7402.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7403.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7404.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7405.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7406.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7407.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7408.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7409.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7410.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7411.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7412.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7413.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7414.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7415.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7416.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7417.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7418.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7419.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7420.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7421.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7422.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7423.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7424.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7425.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7426.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7427.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7428.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7429.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7430.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7431.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7432.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7433.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7434.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7435.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7436.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7437.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7438.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7439.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7440.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7441.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7442.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7443.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7444.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7445.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7446.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7447.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7448.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7449.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7450.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7451.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7452.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7453.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7454.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7455.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7456.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7457.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7458.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7459.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7460.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7461.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7462.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7463.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7464.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7465.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7466.      $0000000000000000000000000000000000000000000000000000000000000000
  7467.   }
  7468.   EmptyTexture:incl =
  7469.   {
  7470.     ;incl = "EmptyGeneric"
  7471.     Image2 = $0000000000000000000000000000000000000000000000000000000000000000
  7472.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7473.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7474.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7475.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7476.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7477.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7478.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7479.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7480.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7481.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7482.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7483.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7484.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7485.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7486.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7487.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7488.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7489.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7490.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7491.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7492.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7493.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7494.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7495.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7496.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7497.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7498.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7499.      $0000000000000000000000000000000000000000
  7500.     Image3 = $0000000000000000000000000000000000000000000000000000000000000000
  7501.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7502.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7503.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7504.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7505.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7506.      $000000000000000000000000000000000000000000000000000000000000000000000000
  7507.      $0000000000000000
  7508.     Image4 = $0000000000000000000000000000000000000000000000000000000000000000
  7509.      $0000000000000000000000000000000000000000000000000000000000000000
  7510.   }
  7511.   EmptyImage:incl =
  7512.   {
  7513.     ;incl = "EmptyGeneric"
  7514.     Pal = $0000000F0F0F1F1F1F2F2F2F3F3F3F4B4B4B5B5B5B6B6B6B7B7B7B8B8B8B9B9B9BAB
  7515.      $ABABBBBBBBCBCBCBDBDBDBEBEBEB634B235B431F533F1F4F3B1B47371B3F2F173B2B1733
  7516.      $27132F23132B1F13271B0F23170F1B130B170F0B130F070F0B075F5F6F5B5B675B535F57
  7517.      $4F5B534B534F474B473F433F3B3B3B3737332F2F2F2B2B2727272323231B1B1B17171713
  7518.      $13138F77537B6343735B3B674F2FCF974BA77B3B8B672F6F5327EB9F27CB8B23AF771F93
  7519.      $631B774F175B3B0F3F270B231707A73B2B9F2F23972B1B8B27137F1F0F73170B67170757
  7520.      $13004B0F00430F003B0F00330B002B0B00230B001B07001307007B5F4B7357436B533F67
  7521.      $4F3B5F4737574333533F2F4B372B4333273F2F2337271B2F2317271B131F170F170F0B0F
  7522.      $0B076F3B175F3717532F17432B17372313271B0F1B130B0F0B07B35B4FBF7B6FCB9B93D7
  7523.      $BBB7CBD7DFB3C7D39FB7C387A7B77397A75B879B47778B2F677F17536F134B670F435B0B
  7524.      $3F5307374B072F3F072733001F2B00171F000F1300070B0000008B5757834F4F7B474773
  7525.      $43436B3B3B6333335B2F2F572B2B4B23233F1F1F331B1B2B13131F0F0F130B0B0B070700
  7526.      $0000979F7B8F9773878B6B7F8363777B5F7373576B6B4F6363475B5B434F4F3B43433337
  7527.      $372B2F2F2323231B1717130F0F0B9F4B3F9343378B3B2F7F3727772F236B2B1B63231757
  7528.      $1F134F1B0F43170B37130B2B0F071F0B071707000B0000000000777BCF6F73C3676BB763
  7529.      $63A75B5B9B53578F4B4F7F4747733F3F673737572F2F4B27273F231F2F1B1723130F170B
  7530.      $07079BAB7B8F9F6F8797637B8B5773834B6777435F6F3B5767334B5B273F4F1B3743132F
  7531.      $3B0B232F071B23001317000B0F0000FF0023E70F3FD31B53BB275FA72F5F8F335F7B33FF
  7532.      $FFFFFFFFD3FFFFA7FFFF7FFFFF53FFFF27FFEB1FFFD717FFBF0FFFAB07FF9300EF7F00E3
  7533.      $6B00D35700C74700B73B00AB2B009B1F008F17007F0F007307005F00004700002F00001B
  7534.      $0000EF00003737FFFF00000000FF2B2B231B1B1713130FEB977FC373539F57337B3F1BEB
  7535.      $D3C7C7AB9BA78B77876B579F5B53
  7536.   }
  7537.  
  7538.     //   --- TOOL BARS ---
  7539.   Tool bars.qrk =
  7540.   {
  7541.     Main.toolbar =
  7542.     {
  7543.       Caption = "new files"
  7544.       DockedTo = "topdock"
  7545.       DockPos = '400'
  7546.       Form = "_toolbar_"
  7547.       map:tbbtn = {
  7548.         Typ  = "N"     // opens a new copy of an object in QuArK
  7549.         Hint[] = "new [::Game] map"
  7550.         Icon = $66600888888811186000444444441191607878704CC411916078787087781191
  7551.                $6000000058511171087070780383119160877780538311916608780558821191
  7552.                $6660805888251191666008777777811844444444444878885C7F777CCC487770
  7553.                $5C77C777CC488880055555555548870666608888888800666666666666666666
  7554.         Create = "NewMap1"   // the button creates a copy of NewMap1:incl
  7555.       }
  7556.     //  image:tbbtn = {
  7557.     //    Typ  = "N"
  7558.     //    Hint = "new .pcx image (you cannot edit it yet)"
  7559.     //    Icon = $66000000000000066687777777775506668FFFFFFFFFF506668FF557FFFFF706
  7560.     //           $668FFF55577FF706668FFFF500F77706668FFFFF00FFF706668FF002200FF706
  7561.     //           $668F5990AA00F706668F5F90AA000706668FF55AAA200506668FFF2BAA270006
  7562.     //           $6685FF222227000666855FFFFFF7860066888888888866056666666666666666
  7563.     //    Create = "NewPcx1"
  7564.     //    NewPcx1:incl =
  7565.     //    {
  7566.     //     New image.pcx =
  7567.     //      {
  7568.     //
  7569.     //      }
  7570.     //    }
  7571.     //  }
  7572.       sep1:tbbtn = {Typ="S" Txt = ""}    // separator line
  7573.       group:tbbtn = {
  7574.         Typ  = "C"     // object creation
  7575.         Hint = "new group"
  7576.         Icon = $666008881111111866604441999799916660CCC1101111116660244404555548
  7577.                $66602C2AA478887866602C4A24787F78666022AC48778878666022CC47888878
  7578.                $666000407787877866608777777777784448444844487F785C77CF77CC487778
  7579.                $5CC7C777CC488880055555555548870666608888888800666666666666666666
  7580.         Create = "NewGroup"
  7581.         NewGroup:incl =
  7582.         {
  7583.           Group.qrk = { }
  7584.         }
  7585.       }
  7586.     }
  7587.  
  7588.     Map.toolbar =
  7589.     {
  7590.       Caption = "menu bar"
  7591.       DockedTo = "topdock"
  7592.       DockPos = '32'
  7593.       Form = "_menubar_"
  7594.       New = "NewMap1"      // Default object created when choosing "File/New" in the Map window
  7595.       viewmenu:tbbtn = {
  7596.         Typ = "*"       // "*" means menu
  7597.         Cap = " &View "
  7598.         view1:tbbtn = {
  7599.           Cap = "Show whole level"
  7600.           Typ  = "R"   // Radio button (for setting one of mutually exclusive setup options)
  7601.           Path = "Map:Options:ShowWholeLevel"
  7602.           Clear = "GrayOutOfView" $0D "HideOutOfView" $0D "Textured"
  7603.         }
  7604.         view2:tbbtn = {
  7605.           Cap = "Gray out of view"
  7606.           Typ  = "R"
  7607.           Path = "Map:Options:GrayOutOfView"
  7608.           Clear = "ShowWholeLevel" $0D "HideOutOfView" $0D "Textured"
  7609.         }
  7610.         view3:tbbtn = {
  7611.           Cap = "Hide out of view"
  7612.           Typ  = "R"   // Radio button (for setting one of mutually exclusive setup options)
  7613.           Path = "Map:Options:HideOutOfView"
  7614.           Clear = "ShowWholeLevel" $0D "GrayOutOfView" $0D "Textured"
  7615.         }
  7616.         view4:tbbtn = {
  7617.           Cap = "Textured view"
  7618.           Typ  = "X"
  7619.           Path = "Map:Options:Textured"
  7620.           //Clear = "ShowWholeLevel" $0D "GrayOutOfView" $0D "HideOutOfView"
  7621.           Shortcut = "Ctrl+T"
  7622.         }
  7623.       }
  7624.       commandsmenu:tbbtn = {
  7625.         Typ = "*"
  7626.         Cap = " &Commands "
  7627.         insert:tbbtn = {
  7628.           Cap = "Insert map item..."
  7629.           Typ = "T"    // toolbox
  7630.           ToolBox = "New map items..."
  7631.           Shortcut = "Ins"
  7632.         }
  7633.         sep1:tbbtn = {Typ="S" Txt = ""}
  7634.         tex:tbbtn = {
  7635.           Cap = "Select texture..."
  7636.           Typ = "M"
  7637.           Msg = "TEX"
  7638.         }
  7639.         mov:tbbtn = {
  7640.           Cap = "Movements..."
  7641.           Typ = "M"
  7642.           Msg = "MOV"
  7643.         }
  7644.         sep2:tbbtn = {Typ="S" Txt = ""}
  7645.         subp:tbbtn = {
  7646.           Cap = "Subtract polyhedrons"
  7647.           Typ = "M"
  7648.           Msg = "SUBP"
  7649.         }
  7650.         intr:tbbtn = {
  7651.           Cap = "Intersect polyhedrons"
  7652.           Typ = "M"
  7653.           Msg = "INTR"
  7654.         }
  7655.         makr:tbbtn = {
  7656.           Cap = "Make room in polyhedrons"
  7657.           Typ = "M"
  7658.           Msg = "MAKR"
  7659.         }
  7660.       }
  7661.       optionsmenu:tbbtn = {
  7662.         Typ = "*"       // "*" means menu
  7663.         Cap = " &Options "
  7664.         delfaces:tbbtn = {
  7665.           Cap  = "Delete unused faces"
  7666.           Typ  = "X"   // Check boX
  7667.           Path = "Map:Options:DeleteFaces"
  7668.         }
  7669.         sep1:tbbtn = {Typ="S" Txt = ""}
  7670.         cfg:tbbtn = {
  7671.           Typ  = "M"
  7672.           Cap  = "&Configuration..."
  7673.           Msg  = "CFGD"
  7674.         }
  7675.       }
  7676.       quakemenu:tbbtn = {
  7677.         Typ = "*"
  7678.         Cap[] = " &[::Game] "
  7679.  
  7680.         go:tbbtn = {
  7681.           Cap[] = "&GO ! (full build + [::Game])"
  7682.           Typ   = "+"        // macro
  7683.           cmd:macro = {Typ="M" Msg="QTEX"}      // write textures
  7684.           cmd:macro = {Typ="M" Msg="WRMP"}      // write .map file
  7685.           cmd:macro = {;copy="QBSPBuild"}       // do the QBSPBuild:incl command (below)
  7686.           cmd:macro = {;copy="VISBuild"}        // do the VISBuild:incl command (below)
  7687.           cmd:macro = {;copy="LIGHTBuild"}      // do the LIGHTBuild:incl command (below)
  7688.           cmd:macro = {;incl="RunGame1"}        // do the RunGame1:incl command (below)
  7689.         }
  7690.         quickgo:tbbtn = {
  7691.           Cap[] = "Quic&kGO ! (no VIS, fast LIGHT)"
  7692.           Typ   = "+"        // macro
  7693.           cmd:macro = {Typ="M" Msg="QTEX"}      // write textures
  7694.           cmd:macro = {Typ="M" Msg="WRMP"}      // write .map file
  7695.           cmd:macro = {;copy="QBSPBuild"}       // do the QBSPBuild:incl command (below)
  7696.           cmd:macro = {;copy="FastLIGHTBuild"}  // do the FastLIGHTBuild:incl command (below)
  7697.           cmd:macro = {;incl="RunGame1"}        // do the RunGame1:incl command (below)
  7698.         }
  7699.         sep1:tbbtn = {Typ="S" Txt = ""}
  7700.         tex1:tbbtn = {
  7701.           Cap = "&Prepare used textures"
  7702.           Typ = "M"
  7703.           Msg = "QTXD"
  7704.         }
  7705.         build:tbbtn = {
  7706.           Cap = "&Complete rebuild"
  7707.           Typ   = "+"        // macro
  7708.           cmd:macro = {Typ="M" Msg="WRMP"}      // write .map file
  7709.           cmd:macro = {;copy="QBSPBuild"}       // do the QBSPBuild:incl command (below)
  7710.           cmd:macro = {;copy="VISBuild"}        // do the VISBuild:incl command (below)
  7711.           cmd:macro = {;copy="LIGHTBuild"}      // do the LIGHTBuild:incl command (below)
  7712.         }
  7713.         run:tbbtn = {
  7714.           Cap[] = "&Run [::Game]"
  7715.           ;incl = "RunGame1"
  7716.         }
  7717.         sep2:tbbtn = {Typ="S" Txt = ""}
  7718.         bsp1:tbbtn = {
  7719.           Cap = "&QBSP (.bsp file creation)"
  7720.           Typ = "+"
  7721.           cmd:macro = {Typ="M" Msg="WRMP"}      // write .map file
  7722.           cmd:macro = {;copy="QBSPBuild"}       // do the QBSPBuild:incl commands (below)
  7723.         }
  7724.         vis1:tbbtn = {
  7725.           Cap = "&VIS (visibility list)"
  7726.           ;copy = "VISBuild"
  7727.         }
  7728.         light1:tbbtn = {
  7729.           Cap = "&LIGHT (light projection)"
  7730.           ;copy = "LIGHTBuild"
  7731.         }
  7732.         sep3:tbbtn = {Typ="S" Txt = ""}
  7733.         ents:tbbtn = {
  7734.           Cap = "QBSP - only &entities"
  7735.           Typ = "+"
  7736.           cmd:macro = {Typ="M" Msg="WRMP"}      // write .map file
  7737.           cmd:macro = {;copy="EntsQBSPBuild"}   // do the EntsQBSPBuild:incl commands (below)
  7738.         }
  7739.       }
  7740.     }
  7741.     Map.toolbar =
  7742.     {
  7743.       Caption = "buttons"
  7744.       DockedTo = "DockLU"
  7745.       DockPos = '0'
  7746.       DockRow = '1'
  7747.       Form = "_toolbar_"
  7748.       cube:tbbtn = {
  7749.         Typ  = "C"     // object creation
  7750.         Hint = "new cube"
  7751.         Icon = $AAAAAAA1011AAAAAAAAA118F8F711AAAAA117FFF8FFFF81A18FFFFFF8FFFFFF0
  7752.                $8FFFFFFF8FFFFFF88FFFFFFF8FFFFFF88FFFFFFF8FFFFFF88FFFFFFF8FFFFFF8
  7753.                $8FFFFFFF07FFFFF88FFFF888F787FFF88F788FFFFFF788F8087FFFFFFFFFFF80
  7754.                $A18FFFFFFFFF811AAAA117FFF781AAAAAAAAA11811AAAAAAAAAAAAAAAAAAAAAA
  7755.         Create = "defpoly"   // the button creates a copy of defpoly:incl (see above)
  7756.        // New.qrk =
  7757.        // {              // the button creates a copy of this
  7758.        //   poly:p =
  7759.        //   {
  7760.        //     east:f   = {v= '64 0 0 64 128 0 64 0 128'   tex[][]="[<[::DefaultTexture]>]"}
  7761.        //     west:f   = {v='-64 0 0 -64 0 128 -64 128 0' tex[][]="[<[::DefaultTexture]>]" m="1"}
  7762.        //     north:f  = {v= '0 64 0 0 64 128 128 64 0'   tex[][]="[<[::DefaultTexture]>]" m="1"}
  7763.        //     south:f  = {v='0 -64 0 128 -64 0 0 -64 128' tex[][]="[<[::DefaultTexture]>]"}
  7764.        //     up:f     = {v= '0 0 64 128 0 64 0 128 64'   tex[][]="[<[::DefaultTexture]>]"}
  7765.        //     down:f   = {v='0 0 -64 0 128 -64 128 0 -64' tex[][]="[<[::DefaultTexture]>]" m="1"}
  7766.        //   }
  7767.        // }
  7768.       }
  7769.       newitems:tbbtn = {
  7770.         Typ  = "T"     // toolbox
  7771.         Hint = "new item"
  7772.         ToolBox = "New map items..."
  7773.         Icon = $9999999999999999900000000000000988888888888888098FB7B7B7B7B7B809
  7774.                $8F7B7B7B7B7B78098FB7B7B7B7B7B8098F7B7B7B7B7B78098FB7B7B7B7B7B809
  7775.                $8F7B7B7B7B7B78098FB7B7B7B7B8B88B8FFFFFFFF8B8B8BB87B7B7B7888BBB88
  7776.                $987B7B780BBBBBBB998888899B8BBB889999999998B8B8B8999999999B88B8BB
  7777.       }
  7778.       trash:tbbtn = {
  7779.         Typ  = "M"      // message (internal action)
  7780.         Msg  = "DEL"    // DELete (see TECHINFO.TXT for a list of possible values
  7781.         Hint = "delete item"
  7782.         Icon = $9999999900009999999999007788099999990077778809999900772777880999
  7783.                $9987722227888099998727272788809998772777778880999872227227888099
  7784.                $98772772278888099877722FFFF8880987777FF8777FF809877FF0887777FF09
  7785.                $8FF8808777FF889988FF8077FF8899999988F8FF889999999999888899999999
  7786.       }
  7787.       sep1:tbbtn = {Typ="S" Txt = ""}    // separator line
  7788.       undo:tbbtn = {
  7789.         Typ  = "M"
  7790.         Msg  = "MURD"
  7791.         Hint = "multiple undo/redo"
  7792.         Icon = $777777777777777700000000000007770FAAAAAAAAAAA0770FAAAAAAAAAAAA07
  7793.                $0FFFFFFFFFFFFAA20222222222222FA07777770AA07772F0777770AAA0000A20
  7794.                $77770AAAAAAAAAA07770FAAAAAAAAF0777770FAAAAFF0077777770FAA0007777
  7795.                $7777770FF0777777777777700077777777777777777777777777777777777777
  7796.       }
  7797.       textures:tbbtn = {
  7798.         Typ  = "M"
  7799.         Msg  = "TEX"
  7800.         Hint = "choose texture"
  7801.         Icon = $DD0000000000000DDD8777777777770DDD8FFFFFFFFFF70DDD8FF7777777F70D
  7802.                $DD8F13030117F70DDD8F33313117F70DDD8F13133117F70DDD8F00000007F70D
  7803.                $DD8F01001117F70DDD8F11101017F70DDD8F1010011FF70DDD8FFFFFFFF0000D
  7804.                $DD8FFFFFFFF7F8DDDD8FFFFFFFF78DDDDD8888888888DDDDDDDDDDDDDDDDDDDD
  7805.       }
  7806.       movement:tbbtn = {
  7807.         Typ   = "M"
  7808.         Msg   = "MOV"
  7809.         Hint  = "movement tool palette"
  7810.         IconW = '17'   // icon width, default 16
  7811.         Icon  = $AAAAAAAA0AAAAAAAA0000000AAAAAAA010AAAAAAA0000000AAAAAA09910AAAAAA0000000AAAAA0999910AAAAA0000000AAAA099999910AAAA0
  7812.                 $000000AAA00909990900AAA0000000AAA09909990910AAA0000000AA0990099900910AA0000000A099999999999910A00000000F9999999999
  7813.                 $999100000000A0F9900999009990A0000000AA0F99099909990AA0000000AAA0F909990990AAA0000000AAA00909990900AAA0000000AAAA0F
  7814.                 $9999990AAAA0000000AAAAA0F99990AAAAA0000000AAAAAA0F990AAAAAA0000000AAAAAAA0F0AAAAAAA0000000AAAAAAAA0AAAAAAAA0000000
  7815.       }
  7816.       sep2:tbbtn = {Typ="S" Txt = ""}    // separator line
  7817.       lock:tbbtn = {
  7818.         Typ  = "X"   // configuration checkbox
  7819.         Path = "Map:Options:PagesLocked"
  7820.         Hint = "lock the multiple-page panel below (no automatic switching)"
  7821.         Icon = $DD0000000000DDDDDD0888888880DDDDDD0B33333380DDDDDD0B3B33B380DDDD
  7822.                $DD0B33333380DDDDDD0B33333380DDDDDD0FBBBB8880DDDDDDD00000770DDDDD
  7823.                $DDDDDDD07780000DDDDDDDD07780770DDDDDDDD07780770DDDDDDDD07780770D
  7824.                $DDDDDDD0F778770DDDDDDDDD0F7770DDDDDDDDDDD0000DDDDDDDDDDDDDDDDDDD
  7825.         IconDown = $DD0000000000DDDDDD0888888880DDDDDD0B33333380DDDDDD0B3B33B380DDDD
  7826.                    $DD0B33333380DDDDDD0B33333380DDDDDD0FBBBB8880DDDDDDD07800770DDDDD
  7827.                    $DD0780DD0780DDDDDD0780DD0780DDDDDD0770DD0780DDDDDD0777807780DDDD
  7828.                    $DD0F77777770DDDDDDD0F777770DDDDDDDDD000000DDDDDDDDDDDDDDDDDDDDDD
  7829.       }
  7830.       3D:tbbtn = {
  7831.         Typ  = "M"
  7832.         Msg  = "3DED"
  7833.         Hint = "open 3DFX viewer"
  7834.         Cap  = "3D"
  7835.       }
  7836.       group:tbbtn = {
  7837.         Typ  = "C"     // object creation
  7838.         Hint = "new group"
  7839.         Icon = $99900000000000009988888888888800998FB7B7B7B7B80098FB7B7B7B7B7080
  7840.                $98F7B7B7B7B780808F7B7B7B7B7B00808FFFFFFFFFF800808888888888888080
  7841.                $90FFFFF07777708090FFFFF00777708090FFF00AA007708090F00AAAAAA00089
  7842.                $900AAAAAAAAAA0999900AAAAAAA00999999900AAA00999999999990009999999
  7843.         Create = "group"   // the button creates a copy of group:incl
  7844.         group:incl = {
  7845.           new group:g = { }
  7846.         }
  7847.       }
  7848.     }
  7849.     tb Texture Browser....toolbar =
  7850.     {
  7851.       Caption = "folders"
  7852.       DockedTo = "topdock"
  7853.       DockPos = '32'
  7854.       Form = "_toolbar_"
  7855.       txlist:tbbtn = {
  7856.         Typ  = "C"     // create an object
  7857.         Hint = "new texture list"
  7858.         Icon = $666666666666666602220222088811188AA32AAA214411912322232203141191
  7859.                $8A23332A27381191832BAA3A2338117123322332073811918AA32AAA23381191
  7860.                $0888188827381191637772777337119166388828883F7118444644444448FF78
  7861.                $5C7F7777CC48F7785C77C777CC48888005555555554887066660888888880066
  7862.         Create = "NewTxList"   // the button creates a copy of NewTxList:incl
  7863.         NewTxList:incl = {
  7864.           Texture list.txlist = {}    // empty texture list
  7865.         }
  7866.       }
  7867.       import1:tbbtn = {
  7868.         Typ  = "M"
  7869.         Msg  = "TXLI"
  7870.         Hint = "make links for a folder of Quake 2 / Heretic II textures (.wal and .m8)"
  7871.         Icon  = $66666660066666666666600B3006666666600BB733300666600B700733333006
  7872.                 $0B700907333333300B0999073333333060099907333333306609990733333330
  7873.                 $6609990773333330660FF99007B33330666009999007B330BF66009999007B00
  7874.                 $6666660000060006666F66666666666666B666F666F66666666666B6666B6666
  7875.       }
  7876.       search1:tbbtn = {
  7877.         Typ = "P"
  7878.         Cap = "Search"
  7879.         Code = "import plugins.tex_search; plugins.tex_search.openbox()"
  7880.         Icon  = $A88888AAAAA88888000008AAAA000008070008AAAA07000807000888A807
  7881.                 $00080000000800000008A070000007000008007000700700000800700070
  7882.                 $0700000AA0000000000000AAAA07000807000AAAAA00000A00000AAAAAA0
  7883.                 $008AA0008AAAAAA0708AA0708AAAAAA000AAA000AAAAAAAAAAAAAAAAAAAA
  7884.       }
  7885.     }
  7886.     tb New Files....toolbar =
  7887.     {
  7888.       Caption = "new files"
  7889.       DockedTo = "topdock"
  7890.       DockRow = '1'
  7891.       Form = "_toolbar_"
  7892.       open:tbbtn = {
  7893.         Cap = " &Copy into main file "
  7894.         Typ = "M"
  7895.         Msg = "OPEN"
  7896.       }
  7897.       new:tbbtn = {
  7898.         Cap = " &Open in new window "
  7899.         Typ = "M"
  7900.         Msg = "OPNW"
  7901.       }
  7902.     }
  7903.     Image.toolbar =
  7904.     {
  7905.       Caption = "image"
  7906.       DockedTo = "topdock"
  7907.       DockPos = '32'
  7908.       Form = "_toolbar_"
  7909.       extedit:tbbtn = {
  7910.         Typ = "M"
  7911.         Hint = "call external editor"
  7912.         Msg = "EXTE"
  7913.         Icon = $6677777777777776600000000000007660FFFFFFFFFFF07660FFFFFFFFFFF07660F7
  7914.                $F33FFFFFF07660FFF3333FF7F07660F7F333118FF07660FFFF331118807660FFFF91
  7915.                $1111807760FF7FF91111107760FFFFFF9111117660FF877FF911111660FFFFFFFF91
  7916.                $111160F777787F79111660FFFFFFFF7F911660FFFFFFFF7069666000000000066666
  7917.       }
  7918.       pal:tbbtn = {
  7919.         Typ   = "M"
  7920.         Hint  = "view image palette"
  7921.         Msg   = "VPAL"
  7922.         IconW = '17'
  7923.         Icon  = $FFFFFFFFFFFFFFFFF000000000000000000000000000000005550EEE066602220000000005550EEE0666022200
  7924.                 $00000005550EEE06660222000000000000000000000000000000000CCC099907770BBB000000000CCC09990777
  7925.                 $0BBB000000000CCC099907770BBB00000000000000000000000000000000044401110888033300000000044401
  7926.                 $110888033300000000044401110888033300000000000000000000000000000000FFFFFFFFFFFFFFFFF0000000
  7927.       }
  7928.     }
  7929.     Texture list.toolbar =
  7930.     {
  7931.       Caption = "texture list"
  7932.       DockedTo = "topdock"
  7933.       DockPos = '32'
  7934.       Form = "_toolbar_"
  7935.       newtex:tbbtn = {
  7936.         Typ   = "C"
  7937.         Hint  = "new texture (Quake 1)"
  7938.         Icon  = $D00000000000000DD78888888888880DD7FFFFFFFFFFF80DD7FFFFFFFFFFF80D
  7939.                 $D7FFF0F0FF0FF80DD7FF0F0FFF0FF80DD7FF0FF0FF0FF80DD7FF0FF0F00FF80D
  7940.                 $D7FFF00FFF0FF80DD7FFFFFFFFFFF80DD7FFFFFFFFFFF80DD7FFFFFFFFF0000D
  7941.                 $D7FFFFFFFFF8F7DDD7FFFFFFFFF87DDDD77777777777DDDDDDDDDDDDDDDDDDDD
  7942.         Create = "NewTexture"
  7943.         NewTexture:incl =
  7944.         {
  7945.           texture.wad_d = { ;incl="EmptyTexture" }
  7946.         }
  7947.       }
  7948.       newtex:tbbtn = {
  7949.         Typ   = "C"
  7950.         Hint  = "new texture (Quake 2)"
  7951.         Icon  = $D00000000000000DD78888888888880DD7FFFFFFFFFFF80DD7FFFFFFFFFFF80D
  7952.                 $D7FF0F0F000FF80DD7F0F0FFF0FFF80DD7F0FF0FFF0FF80DD7F0FF0F0F0FF80D
  7953.                 $D7FF00FFF0FFF80DD7FFFFFFFFFFF80DD7FFFFFFFFFFF80DD7FFFFFFFFF0000D
  7954.                 $D7FFFFFFFFF8F7DDD7FFFFFFFFF87DDDD77777777777DDDDDDDDDDDDDDDDDDDD
  7955.         Create = "NewTexture"
  7956.         NewTexture:incl =
  7957.         {
  7958.           texture.wal = { ;incl="EmptyTexture" }
  7959.         }
  7960.       }
  7961.       newtex:tbbtn = {
  7962.         Typ   = "C"
  7963.         Hint  = "new texture (Heretic II)"
  7964.         Icon  = $D00000000000000DD78888888888880DD7FFFFFFFFFFF80DD7FFFFFFFFFFF80D
  7965.                 $D70FF0F0FF00070DD70FF0F0FF0FF80DD70000F00FF0F80DD70FF0FFFFFF070D
  7966.                 $D70FF0FFFF00F80DD7FFFFFFFFFFF80DD7FFFFFFFFFFF80DD7FFFFFFFFF0000D
  7967.                 $D7FFFFFFFFF8F7DDD7FFFFFFFFF87DDDD77777777777DDDDDDDDDDDDDDDDDDDD
  7968.         Create = "NewTexture"
  7969.         NewTexture:incl =
  7970.         {
  7971.           texture.m8 = { ;incl="EmptyTexture" }
  7972.         }
  7973.       }
  7974.       newtex:tbbtn = {
  7975.         Typ   = "C"
  7976.         Hint  = "new texture (Sin)"
  7977.         Icon  = $D00000000000000DD78888888888880DD7FFFFFFFFFFF80DD7FFFFFFFFFFF80D
  7978.                 $D7F000FF0F0F070DD7FFFF0F0F0F070DD7FF00FF0F00F80DD7F0FFFFFFFFF80D
  7979.                 $D7FF000F0FFFF80DD7FFFFFFFFFFF80DD7FFFFFFFFFFF80DD7FFFFFFFFF0000D
  7980.                 $D7FFFFFFFFF8F7DDD7FFFFFFFFF87DDDD77777777777DDDDDDDDDDDDDDDDDDDD
  7981.         Create = "NewTexture"
  7982.         NewTexture:incl =
  7983.         {
  7984.           texture.swl = { ;incl="EmptyTexture" }
  7985.         }
  7986.       }
  7987.       newtex:tbbtn = {
  7988.         Typ   = "C"
  7989.         Hint  = "new texture (Half-Life)"
  7990.         Icon  = $D00000000000000DD78888888888880DD7FFFFFFFFFFF80DD7FFFFFFFFFFF80D
  7991.                 $D7FF0FF0F000F80DD7FF0FF0F0FFF80DD7FF0000F0FFF80DD7FF0FF0F0FFF80D
  7992.                 $D7FF0FF0F0FFF80DD7FFFFFFFFFFF80DD7FFFFFFFFFFF80DD7FFFFFFFFF0000D
  7993.                 $D7FFFFFFFFF8F7DDD7FFFFFFFFF87DDDD77777777777DDDDDDDDDDDDDDDDDDDD
  7994.         Create = "NewTexture"
  7995.         NewTexture:incl =
  7996.         {
  7997.           texture.wad3_C = { ;incl="EmptyTexture" }
  7998.         }
  7999.       }
  8000.       newtex:tbbtn = {
  8001.         Typ   = "C"
  8002.         Hint  = "new TGA texture (Quake 3)"
  8003.         Icon  = $D00000000000000DD78888888888880DD7FFFFFFFFFFF80DD7FFFFFFFFFFF80D
  8004.                 $D7FFF0F0F00FF80DD7FF0F0FFFF0F80DD7FF0FF0FF0FF80DD7FF0FF0FFF0F80D
  8005.                 $D7FFF00FF00FF80DD7FFFFFFFFFFF80DD7FFFFFFFFFFF80DD7FFFFFFFFF0000D
  8006.                 $D7FFFFFFFFF8F7DDD7FFFFFFFFF87DDDD77777777777DDDDDDDDDDDDDDDDDDDD
  8007.         Create = "NewTexture"
  8008.         NewTexture:incl =
  8009.         {
  8010.           texture.tga = { ;incl="EmptyImage" }
  8011.         }
  8012.       }
  8013.     }
  8014.     Texture.toolbar =
  8015.     {
  8016.       Caption = "texture"
  8017.       DockedTo = "topdock"
  8018.       DockPos = '32'
  8019.       Form = "_toolbar_"
  8020.       extedit:tbbtn = {
  8021.         Typ = "M"
  8022.         Hint = "call external editor"
  8023.         Msg = "EXTE"
  8024.         Icon = $6677777777777776600000000000007660FFFFFFFFFFF07660FFFFFFFFFFF07660F7
  8025.                $F33FFFFFF07660FFF3333FF7F07660F7F333118FF07660FFFF331118807660FFFF91
  8026.                $1111807760FF7FF91111107760FFFFFF9111117660FF877FF911111660FFFFFFFF91
  8027.                $111160F777787F79111660FFFFFFFF7F911660FFFFFFFF7069666000000000066666
  8028.       }
  8029.       pal:tbbtn = {
  8030.         Typ   = "M"
  8031.         Hint[]= "view [::Game] palette"
  8032.         Msg   = "VPAL"
  8033.         IconW = '17'
  8034.         Icon  = $FFFFFFFFFFFFFFFFF000000000000000000000000000000005550EEE066602220000000005550EEE0666022200
  8035.                 $00000005550EEE06660222000000000000000000000000000000000CCC099907770BBB000000000CCC09990777
  8036.                 $0BBB000000000CCC099907770BBB00000000000000000000000000000000044401110888033300000000044401
  8037.                 $110888033300000000044401110888033300000000000000000000000000000000FFFFFFFFFFFFFFFFF0000000
  8038.       }
  8039.       resize:tbbtn = {
  8040.         Typ   = "M"
  8041.         Hint[]= "resize texture"
  8042.         Msg   = "RSZT"
  8043.         Icon  = $6666006600666666660066006616666600660066199166666600661999996666
  8044.                 $0066191999991666661999199999166661999991991191660699999111999966
  8045.                 $0619991199999916606911999999916660619999999166666606999991666666
  8046.                 $0606199166666666066061666666666660606666666666666066666666666666
  8047.       }
  8048.     }
  8049.     Pak.toolbar =
  8050.     {
  8051.       Caption = "pak"
  8052.       DockedTo = "topdock"
  8053.       DockPos = '32'
  8054.       Form = "_toolbar_"
  8055.       extract:tbbtn = {
  8056.         Typ   = "M"
  8057.         Msg   = "PAKX"
  8058.         Hint  = "extract the whole folder to disk"
  8059.         IconW = '20'
  8060.         Icon  = $66666666600666666666000066666660022006666666000066666002AA22200666660000666004CAAA22244006660000
  8061.                 $6602ACCAAA22244220660000660AACCAAA22244220660000660AACCAAA22244220660000660AACCAAA22244220660000
  8062.                 $660AACCAAF02244220660000660AACCFFA02244220660000660AAFFAA0B0222220660000660AAA2200A0222220660000
  8063.                 $660A2200EEEE0022206600006022000A6666600022060000600066666666666600060000006666666666666666000000
  8064.       }
  8065.       extract:tbbtn = {
  8066.         Typ   = "M"
  8067.         Msg   = "PAKE"
  8068.         Hint  = "extract entity lumps to disk"
  8069.         IconW = '20'
  8070.         Icon  = $66666666600666666666000066666660022006666666000066666002AA22200666660000666004CAAA22244006660000
  8071.                 $6602ACCAAA22244220660000660AACCAAA22244220660000660AACCAAA22244220660000660AACCAAA22244220660000
  8072.                 $660AACCAAF02244220660000660AACCFFA02244220660000660AAFFAA0B0222220660000660AAA2200A0222220660000
  8073.                 $660A2200EEEE0022206600006022000A6666600022060000600066666666666600060000006666666666666666000000
  8074.       }
  8075.       folder:tbbtn = {
  8076.         Typ   = "C"
  8077.         Hint  = "new folder for these files"
  8078.         Icon  = $666660000066666666660232AA20666660003332ABA0206602303332ABB0FA06
  8079.                 $03303332ABB0FBA003303332AAB0FBB0033033222AA0FBB0033022AAA220FBB0
  8080.                 $0322022AA2022AA002AA2022002AA2A00AAAA20022AAAA20602A0022002A2006
  8081.                 $66002AAAA20006666666002A2006666666666600066666666666666666666666
  8082.         Create = "NewFolder"
  8083.         NewFolder:incl =
  8084.         {
  8085.           folder.pakfolder = { }
  8086.         }
  8087.       }
  8088.     }
  8089.     QuakeC.toolbar =
  8090.     {
  8091.       Caption = "QuakeC"
  8092.       DockedTo = "topdock"
  8093.       DockPos = '32'
  8094.       Form = "_toolbar_"
  8095.       compile:tbbtn = {
  8096.         Typ   = "M"
  8097.         Msg   = "QCC1"
  8098.         Hint  = "compile this QuakeC patch"
  8099.         IconW = '18'
  8100.         Icon  = $707707707707707707000000707070707070707070000000707070707070707070000000707070707070707070000000707707707707
  8101.                 $707707000000777777777777777777000000777777777777777777000000777777777777777007000000700000000007770000000000
  8102.                 $0BFBFBFBFBF07000000000000FBFBFBFBFB07770070000000BFBFBFBFBF07770070000000FBFBFBFBFB07780070000000BFBFBFBFBF0
  8103.                 $7000870000000FBFBFBFBFB070087700000000000BFBFBF07777770000000FBFB0000007777777000000700007777777777777000000
  8104.       }
  8105.       execute:tbbtn = {
  8106.         Typ   = "M"
  8107.         Msg   = "QCCX"
  8108.         Hint  = "compile this QuakeC patch and run it"
  8109.         Icon  = $777777877777777777777088777777777777700887777777777770A088777777
  8110.                 $777770AA088777777777707A70887777777770AAAA088777777770A7A7A08877
  8111.                 $777770AAAAAA07777777707A7A707777777770AAAA077777777770A7A0777777
  8112.                 $777770AA07777777777770707777777777777007777777777777707777777777
  8113.       }
  8114.     }
  8115.   }
  8116.  
  8117. }
  8118.  
  8119.  
  8120.